Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O Azure Managed Redis oferece um mecanismo de autenticação sem palavra-passe através da integração com o Microsoft Entra ID. Os caches do Azure Managed Redis usam o Microsoft Entra ID por padrão. Quando você cria um novo cache, a identidade gerenciada é habilitada.
Embora a autenticação da chave de acesso ainda esteja disponível, ela vem com um conjunto de desafios relacionados à segurança e ao gerenciamento de senhas. Por outro lado, neste artigo, aprende a utilizar um token do Microsoft Entra para autenticação da cache.
Neste artigo, aprende a utilizar o seu principal de serviço ou identidade gerida para se ligar à sua instância do Redis.
Pré-requisitos e limitações
- A autenticação do Microsoft Entra é suportada apenas para ligações SSL.
- Os grupos do Microsoft Entra não são suportados.
- Alguns comandos do Redis estão bloqueados. Para obter uma lista completa dos comandos bloqueados, consulte Comandos do Redis não suportados no Azure Managed Redis.
Important
Após o estabelecimento de uma ligação utilizando um token do Microsoft Entra, as aplicações cliente têm de atualizar periodicamente o token do Microsoft Entra antes de expirar. Em seguida, as aplicações devem enviar um comando AUTH para o servidor do Redis para evitar a interrupção das ligações. Para obter mais informações, consulte Configurar o seu cliente Redis para utilizar o Microsoft Entra.
Configurar o seu cliente Redis para utilizar o Microsoft Entra
Se você usou chaves de acesso no passado para autenticação, precisará atualizar seu fluxo de trabalho de cliente para oferecer suporte à autenticação usando o Microsoft Entra ID. Nesta seção, você aprenderá a se conectar ao Azure Managed Redis usando uma ID do Microsoft Entra.
Adicionar utilizadores ou principal de sistema ao cache
Conecte-se ao seu cache no portal do Azure.
No menu Recurso, selecione Autenticação.
Na guia Autenticação do Microsoft Entra , selecione Usuário ou entidade de serviço e, em seguida, + Selecionar membro.
Digite o nome do usuário que você deseja executar o programa. Selecione o usuário a ser adicionado na lista e selecione. O usuário é adicionado à lista de usuários do Redis.
Fluxo de trabalho do cliente Microsoft Entra
Configure a sua aplicação cliente para adquirir um token do Microsoft Entra para o escopo
https://redis.azure.com/.defaultouacca5fbb-b7e4-4009-81f1-37e38fd66d78/.defaultusando a Biblioteca de Autenticação da Microsoft (MSAL).Atualize a sua lógica de ligação Redis para utilizar o seguinte
UserePassword:-
User= ID do objeto da sua identidade gerida ou principal de serviço -
Password= o Token do Microsoft Entra que adquiriu através da MSAL
-
Certifique-se de que seu cliente execute um comando Redis
AUTHautomaticamente antes que seu token Microsoft Entra expire, usando:-
User= ID do objeto da sua identidade gerida ou principal de serviço -
Password= Token do Microsoft Entra atualizado periodicamente
-
Melhores práticas para autenticação do Microsoft Entra
- Configure ligações privadas ou regras de firewall para proteger a sua cache de um ataque denial of service.
- Certifique-se de que a sua aplicação cliente envia um novo token do Microsoft Entra pelo menos três minutos antes da expiração do token de modo a evitar a interrupção da ligação.
- Quando chamar o comando do servidor do Redis
AUTHperiodicamente, considere adicionar um jitter para que os comandosAUTHsejam escalonados. Desta forma, o seu servidor do Redis não recebe muitos comandosAUTHao mesmo tempo.
Solução de problemas do Microsoft Entra ID e seu cache
Se seu aplicativo não conseguir acessar a instância do Azure Managed Redis por meio da ID do Microsoft Entra, use este script do PowerShell:
Use este script do PowerShell para validar tokens de ID do Microsoft Entra para recursos do Cache Redis Gerenciado do Azure. O script valida tokens e verifica políticas de acesso para ajudá-lo a diagnosticar problemas de autenticação.
Se você estiver tendo problemas para usar o Microsoft Entra ID para autenticar conexões Redis, execute este script para analisar seu token do Microsoft Entra e identificar quaisquer problemas.
Suporte à biblioteca de cliente
A biblioteca Microsoft.Azure.StackExchangeRedis é uma extensão de StackExchange.Redis que lhe permite utilizar o Microsoft Entra para autenticar ligações de uma aplicação cliente Redis a um Azure Managed Redis. A extensão gere o token de autenticação, incluindo a atualização proativa dos tokens antes que expirem para manter ligações Redis persistentes durante vários dias.
Este exemplo de código demonstra como utilizar o pacote Microsoft.Azure.StackExchangeRedis NuGet para se ligar à sua instância do Azure Managed Redis utilizando o Microsoft Entra.
A tabela seguinte inclui ligações para exemplos de código. Demonstram como se ligar à sua instância do Azure Managed Redis utilizando um token do Microsoft Entra. Estão incluídas várias bibliotecas de cliente em vários idiomas.
| Biblioteca de cliente | Linguagem | Ligação para código de exemplo |
|---|---|---|
| StackExchange.Redis | .NET | Exemplo de código StackExchange.Redis |
| redis-py | Python | Exemplo de código redis-py |
| Jedis | Java | Exemplo de código Jedis |
| Lettuce | Java | Exemplo de código Lettuce |
| node-redis | Node.js | Exemplo de código node-redis |
| go-redis | Go | Exemplo de código Go |
Desativar a autenticação por chave de acesso na sua cache
Se você tiver um cache usando chaves de acesso, recomendamos mudar para o Microsoft Entra ID como a maneira segura de conectar seu cache e desabilitar as chaves de acesso.
Quando você desabilita as chaves de acesso, o sistema encerra todas as conexões de cliente existentes, independentemente de elas usarem chaves de acesso ou autenticação de ID do Microsoft Entra.
Antes de desativar as chaves de acesso em caches replicados geograficamente, você deve:
- Desassociar as caches.
- Desativar as chaves de acesso.
- Voltar a associar as caches.
Para desativar as chaves de acesso, siga este procedimento:
No portal do Azure, selecione a instância do Azure Managed Redis onde você deseja desabilitar as chaves de acesso.
No menu Recurso , selecione Autenticação.
No painel de trabalho, selecione Teclas de acesso.
Selecione o controle Autenticação de Chaves de Acesso para desabilitar as chaves de acesso.
Confirme que deseja atualizar sua configuração selecionando Sim.
Important
Quando a configuração Autenticação de Chaves de Acesso é alterada para um cache, todas as conexões de cliente existentes, usando chaves de acesso ou Microsoft Entra, são encerradas. Siga as melhores práticas para implementar mecanismos de repetição adequados para voltar a estabelecer ligações baseadas no Microsoft Entra. Para obter mais informações, consulte Resiliência de conexão.