Partilhar via


Configurar políticas personalizadas de acesso a dados

Importante

O Cache do Azure para Redis anunciou seu cronograma de desativação para todas as SKUs. Recomendamos mover as suas instâncias existentes do Azure Cache para Redis para Azure Managed Redis o mais rápido possível.

Para mais detalhes sobre a aposentadoria:

Gerenciar o acesso à sua instância de cache Redis do Azure é fundamental para garantir que os usuários certos tenham acesso ao conjunto certo de dados e comandos. O Redis versão 6 introduziu a Lista de Controle de Acesso (ACL), que lista as chaves que usuários específicos podem acessar e os comandos que eles podem executar. Por exemplo, você pode proibir usuários específicos de usar o comando DEL para excluir chaves no cache.

O Cache Redis do Azure integra essa funcionalidade de ACL com o Microsoft Entra para permitir que você configure e atribua políticas de acesso a dados para os usuários, a entidade de serviço e a identidade gerenciada do seu aplicativo. O Cache Redis do Azure oferece três políticas de acesso internas que você pode atribuir por meio do RBAC (controle de acesso baseado em função): Proprietário de Dados, Colaborador de Dados e Leitor de Dados.

Se as políticas de acesso internas não satisfizerem seus requisitos de proteção e isolamento de dados, você poderá criar e usar suas próprias políticas personalizadas de acesso a dados. Este artigo descreve a configuração de uma política de acesso a dados personalizada para o Cache Redis do Azure e a habilitação do RBAC por meio da autenticação do Microsoft Entra.

Âmbito da disponibilidade

Nível Básico, Standard e Premium Empresa, Enterprise Flash
Disponibilidade Sim Não

Limitações

  • A configuração de políticas de acesso a dados não é suportada nas camadas Enterprise e Enterprise Flash.
  • A ACL do Redis e as políticas de acesso a dados não são suportadas em instâncias do Azure Redis que executam o Redis versão 4.
  • A autenticação e autorização do Microsoft Entra são suportadas apenas para conexões SSL (Secure Socket Layer).
  • Alguns comandos Redis são bloqueados no Cache do Azure para Redis. Para obter mais informações, consulte Comandos Redis não suportados no Cache do Azure para Redis.

Permissões da ACL do Redis

A ACL do Redis no Redis versão 6.0 permite configurar permissões de acesso para três áreas: categorias de comandos, comandos e chaves.

Categorias de comando

O Redis criou categorias de comandos, como comandos administrativos e comandos perigosos, para facilitar a configuração de permissões em um grupo de comandos. Em uma cadeia de permissões, use +@<category> para permitir uma categoria de comando ou -@<category> para não permitir uma categoria de comando.

O Redis suporta as seguintes categorias de comandos úteis. Para obter mais informações e uma lista completa, consulte o título Categorias de comando na documentação da ACL do Redis.

Categoria Descrição
admin Comandos administrativos, como MONITOR e SHUTDOWN. Aplicativos normais nunca precisam usar esses comandos.
dangerous Comandos potencialmente perigosos, incluindo FLUSHALL, RESTORE, , SORT, KEYSCLIENT, DEBUG, INFOe CONFIG. Considere cada caso com cuidado, por vários motivos.
keyspace Inclui DEL, RESTORE, DUMP, RENAME, EXISTS, DBSIZE, KEYS, EXPIRE, TTL e FLUSHALL. Escrever ou ler a partir de chaves, bases de dados ou seus metadados de uma forma independente de tipo. Os comandos que leem apenas o espaço de chave, a chave ou os metadados têm a read categoria. Os comandos que podem modificar o espaço de chave, a chave ou os metadados também têm a write categoria.
pubsub Comandos relacionados a PubSub.
read Leitura de chaves, valores ou metadados. Os comandos que não interagem com as teclas não têm nem read nem write.
set Tipo de dados: conjuntos relacionados.
sortedset Tipo de dados: conjuntos ordenados relacionados.
stream Tipo de dados: fluxos relacionados.
string Tipo de dados: strings relacionadas.
write Gravação de valores ou metadados em chaves.

Observação

Os comandos bloqueados para o Azure Redis permanecem bloqueados dentro das categorias.

Comandos

Os comandos permitem controlar quais comandos específicos um determinado usuário do Redis pode executar. Em uma cadeia de permissões, use +<command> para permitir um comando ou -<command> para não permitir um comando.

Chaves

As chaves permitem controlar o acesso a chaves específicas ou grupos de chaves armazenadas no cache. Use ~<pattern> em uma cadeia de caracteres de permissão para fornecer um padrão para chaves. Utilize ~* ou allkeys para indicar que as permissões se aplicam a todas as chaves no cache.

Configurar uma política de acesso a dados personalizada para seu aplicativo

Para configurar uma política de acesso a dados personalizada, crie uma cadeia de caracteres de permissões para usar como sua política de acesso personalizada e habilite a autenticação do Microsoft Entra para seu cache.

Especificar permissões

Configure cadeias de caracteres de permissão de acordo com suas necessidades. Os exemplos a seguir mostram cadeias de caracteres de permissão para vários cenários:

Cadeia de permissões Descrição
+@all allkeys Permitir que o aplicativo execute todos os comandos em todas as teclas.
+@read ~* Permitir que o aplicativo execute apenas read a categoria de comando.
+@read +set ~Az* Permitir que o aplicativo execute a categoria de comando read e defina o comando para teclas com o prefixo Az.

Criar a política de acesso a dados personalizada

  1. No portal do Azure, selecione o cache Redis do Azure onde você deseja criar a política de acesso a dados.

  2. Selecione Configuração de Acesso a Dados em Configurações no menu de navegação à esquerda.

    Captura de ecrã a mostrar a Configuração de Acesso a Dados realçada no menu Recurso.

  3. Na página Configuração de Acesso a Dados , selecione Adicionar>Nova Política de Acesso.

  4. Na tela Adicionar/editar uma política de acesso personalizada , forneça um nome para sua política de acesso.

  5. Em Permissões, adicione sua cadeia de caracteres de permissões personalizada e selecione Aplicar.

    Captura de ecrã a mostrar um formulário para adicionar uma política de acesso personalizada.

A política personalizada agora aparece na guia Políticas de Acesso da página Configuração de Acesso a Dados , junto com as três políticas internas do Azure Redis.

Habilitar a autenticação do Microsoft Entra

Para atribuir um utilizador a uma política de acesso utilizando o Microsoft Entra, deve ter o Microsoft Entra, em vez da autenticação por Chaves de Acesso, ativado no cache. Para verificar o método de autenticação, selecione Autenticação emConfigurações no menu de navegação esquerdo do cache.

Na tela Autenticação , se a opção Desabilitar Autenticação de Chaves de Acesso estiver selecionada e nenhuma chave de acesso aparecer na tela, seu cache já usará a autenticação do Microsoft Entra. Caso contrário, marque a caixa de seleção ao lado de Desabilitar autenticação de chaves de acesso e selecione Salvar.

Captura de ecrã a mostrar a desativação da autenticação de chaves de acesso.

Responda Sim à caixa de diálogo pop-up perguntando se você deseja desativar a autenticação de chaves de acesso.

Importante

Quando a operação de ativação do Microsoft Entra estiver concluída, os nós na instância de cache serão reinicializados para carregar a nova configuração. A operação pode demorar até 30 minutos. É melhor realizar essa operação durante a janela de manutenção ou fora do horário comercial de pico.

Configure seu cliente Redis para usar o Microsoft Entra ID

A maioria dos clientes do Cache do Azure para Redis assume que uma senha e uma chave de acesso são usadas para autenticação. Talvez seja necessário atualizar o fluxo de trabalho do cliente para oferecer suporte à autenticação e autorização usando um nome de usuário e senha específicos do Microsoft Entra. Para saber como configurar seu aplicativo cliente para se conectar à instância de cache como um usuário Redis específico, consulte Configurar seu cliente Redis para usar o Microsoft Entra ID.