Guia de início rápido: usar o Redis do Azure com um aplicativo Web ASP.NET Core
Neste início rápido, você incorpora o Cache do Azure para Redis em um aplicativo Web ASP.NET Core que se conecta ao Cache Redis do Azure para armazenar e recuperar dados do cache.
Há também provedores de cache no núcleo .NET. Para começar rapidamente a usar o Redis com alterações mínimas no código existente, consulte:
- ASP.NET provedor principal de Cache de Saída
- ASP.NET provedor principal de Distributed Caching
- ASP.NET provedor de sessão Redis principal
Saltar para o código no GitHub
Clone o https://github.com/Azure-Samples/azure-cache-redis-samples repositório GitHub e navegue até o quickstart/aspnet-core
diretório para visualizar o código-fonte concluído para as etapas à frente.
O quickstart/aspnet-core
diretório também é configurado como um modelo de CLI (azd
) do Desenvolvedor do Azure. Use a ferramenta de código azd
aberto para simplificar o provisionamento e a implantação de um ambiente local para o Azure. Opcionalmente, execute o azd up
comando para provisionar automaticamente uma instância do Cache Redis do Azure e configurar o aplicativo de exemplo local para se conectar a ele:
azd up
Pré-requisitos
- Subscrição do Azure - crie uma gratuitamente
- SDK .NET Core
Criar uma instância do Azure Managed Redis (visualização)
Para criar uma instância do Azure Managed Redis (visualização), entre no portal do Azure e selecione Criar um recurso.
Na página Novo, na caixa de pesquisa, digite Cache do Azure para Redis.
Na página Novo Cache Redis, defina as configurações para o novo cache.
Definição Escolher um valor Description Subscrição Drop-down e selecione sua assinatura. A assinatura sob a qual criar essa nova instância do Azure Managed Redis. Grupo de recursos Drop-down e selecione um grupo de recursos, ou selecione Criar novo e insira um novo nome de grupo de recursos. Nome do grupo de recursos no qual criar o cache e outros recursos. Ao colocar todos os recursos do seu aplicativo em um grupo de recursos, você pode facilmente gerenciá-los ou excluí-los juntos. Nome DNS Insira um nome exclusivo na região. O nome do cache deve ser uma cadeia de caracteres entre 1 e 63 caracteres quando combinado com o nome da região do cache que contém apenas números, letras ou hífenes. (Se o nome do cache tiver menos de 45 caracteres, ele deverá funcionar em todas as regiões atualmente disponíveis.) O nome deve começar e terminar com um número ou letra e não pode conter hífenes consecutivos. O nome de host da instância de cache é \<DNS name\>.\<Azure region\>.redis.azure.net
.Location Drop-down e selecione um local. O Azure Managed Redis está disponível em regiões selecionadas do Azure. Tipo de cache Faça uma lista suspensa e selecione a camada de desempenho e o tamanho do cache. A camada determina o desempenho da instância do Redis, enquanto o tamanho do cache determina a memória disponível para armazenar dados. Para obter orientação sobre como escolher a camada de desempenho correta, consulte Escolhendo a camada certa Selecione Next: Networking e selecione um ponto de extremidade público ou privado.
Selecione Next: Avançado.
Configure todos os módulos Redis que você deseja adicionar à instância.
Por padrão, para um novo cache gerenciado:
- O Microsoft Entra ID está habilitado.
- A Autenticação de Chaves de Acesso está desativada por motivos de segurança.
Importante
Para uma segurança ideal, recomendamos que você use o Microsoft Entra ID com identidades gerenciadas para autorizar solicitações em seu cache, se possível. A autorização usando o ID do Microsoft Entra e identidades gerenciadas oferece segurança superior e facilidade de uso em relação à autorização de chave de acesso compartilhado. Para obter mais informações sobre como usar identidades gerenciadas com seu cache, consulte Usar a ID do Microsoft Entra para autenticação de cache.
Defina a política de Clustering como Enterprise para um cache não clusterizado ou como OSS para um cache clusterizado. Para obter mais informações sobre como escolher a política de clustering, consulte Política de cluster.
Se você estiver usando a replicação geográfica ativa, ela deverá ser configurada durante a criação. Para obter mais informações, consulte Configurar a replicação geográfica ativa para instâncias do Azure Managed Redis.
Importante
Não é possível alterar a política de clustering de uma instância do Azure Managed Redis (visualização) depois de criá-la. Se você estiver usando o RediSearch, a política de cluster Enterprise será necessária e
NoEviction
será a única política de remoção suportada.Importante
Se você estiver usando essa instância de cache em um grupo de replicação geográfica, as políticas de remoção não poderão ser alteradas após a criação da instância. Certifique-se de conhecer as políticas de remoção de seus nós principais antes de criar o cache. Para obter mais informações sobre replicação geográfica ativa, consulte Pré-requisitos de replicação geográfica ativa.
Importante
Não é possível alterar módulos depois de criar uma instância de cache. Os módulos devem ser habilitados no momento em que você cria uma instância do Cache do Azure para Redis. Não há nenhuma opção para habilitar a configuração de um módulo depois de criar um cache.
Selecione Next: Tags e skip.
Selecione Seguinte: Rever + criar.
Revise as configurações e selecione Criar.
Leva vários minutos para a instância do Redis ser criada. Você pode monitorar o progresso na página Visão Geral do Redis Gerenciado do Azure. Quando Status é exibido como Em execução, o cache está pronto para uso.
Criar uma instância do Cache do Azure para Redis
Para criar um cache, entre no portal do Azure. No menu do portal, selecione Criar um recurso.
No painel Introdução, insira Cache Redis do Azure na barra de pesquisa. Nos resultados da pesquisa, localize o Cache do Azure para Redis e selecione Criar.
No painel Novo Cache Redis, na guia Noções básicas, defina as seguintes configurações para o cache:
Definição Ação Descrição Subscrição Selecione a subscrição do Azure. A assinatura a ser usada para criar a nova instância do Cache do Azure para Redis. Grupo de recursos Selecione um grupo de recursos ou selecione Criar novo e insira um novo nome de grupo de recursos. Um nome para o grupo de recursos no qual criar seu cache e outros recursos. Ao colocar todos os recursos do seu aplicativo em um grupo de recursos, você pode facilmente gerenciá-los ou excluí-los juntos. Nome DNS Introduza um nome exclusivo. O nome do cache deve ser uma cadeia de caracteres de 1 a 63 caracteres que contenha apenas números, letras e hífenes. O nome deve começar e terminar com um número ou letra, e não pode conter hífenes consecutivas. O nome de host da instância de cache é \<DNS name>.redis.cache.windows.net
.Location Selecione uma localização. Uma região do Azure que está perto de outros serviços que usam seu cache. Cache SKU Selecione uma SKU. A SKU determina o tamanho, o desempenho e os parâmetros de recurso disponíveis para o cache. Para obter mais informações, consulte Visão geral do Cache do Azure para Redis. Tamanho do cache Selecione um tamanho de cache. Para obter mais informações, consulte Visão geral do Cache do Azure para Redis. Selecione a guia Rede ou selecione Avançar: Rede.
Na guia Rede, selecione um método de conectividade a ser usado para o cache.
Selecione a guia Avançado ou selecione Avançar: Avançado.
No painel Avançado, verifique ou selecione um método de autenticação com base nas seguintes informações:
- Por padrão, para um novo cache Básico, Standard ou Premium, a Autenticação do Microsoft Entra está habilitada e a Autenticação de Chaves de Acesso está desabilitada.
- Para caches Basic ou Standard, você pode escolher a seleção para uma porta não-TLS.
- Para caches Standard e Premium, você pode optar por habilitar zonas de disponibilidade. Não é possível desativar as zonas de disponibilidade após a criação do cache.
- Para um cache Premium, defina as configurações para porta não-TLS, clustering, identidade gerenciada e persistência de dados.
Importante
Para uma segurança ideal, recomendamos que você use o Microsoft Entra ID com identidades gerenciadas para autorizar solicitações em seu cache, se possível. A autorização usando o ID do Microsoft Entra e identidades gerenciadas oferece segurança superior e facilidade de uso em relação à autorização de chave de acesso compartilhado. Para obter mais informações sobre como usar identidades gerenciadas com seu cache, consulte Usar a ID do Microsoft Entra para autenticação de cache.
(Opcional) Selecione a guia Tags ou selecione Next: Tags.
(Opcional) Na guia Marcas , insira um nome e um valor de tag se quiser categorizar seu recurso de cache.
Selecione o botão Rever + criar.
Na guia Revisão + criação, o Azure valida automaticamente sua configuração.
Depois que a mensagem verde Validação passada for exibida, selecione Criar.
Uma nova implantação de cache ocorre ao longo de vários minutos. Você pode monitorar o progresso da implantação no painel Visão Geral do Cache do Azure para Redis. Quando Status exibe Em execução, o cache está pronto para uso.
Autenticação de ID do Microsoft Entra (recomendado)
Usar a autenticação do Microsoft Entra ID no cache
Os caches Redis do Azure, exceto para as camadas Enterprise e Enterprise Flash, têm a Autenticação Microsoft Entra habilitada por padrão. As chaves de acesso estão desativadas por padrão.
Importante
A Microsoft recomenda o uso da autenticação Microsoft Entra ID para a experiência de autenticação mais segura em vez de usar senhas ou chaves de acesso. A autenticação descrita nesta seção do artigo usa chaves de acesso, que exigem um grau muito alto de confiança no aplicativo e acarreta riscos não presentes ao usar o Microsoft Entra ID. Use a abordagem neste documento somente quando a autenticação do Microsoft Entra ID não for viável.
No portal do Azure, selecione o cache onde você gostaria de usar a autenticação baseada em token do Microsoft Entra.
Selecione Autenticação no menu Recurso.
Selecione Selecionar membro e digite o nome de um usuário válido. O usuário inserido recebe automaticamente a Política de Acesso do Proprietário de Dados por padrão quando você seleciona Salvar. Você também pode inserir uma identidade gerenciada ou uma entidade de serviço para se conectar à sua instância de cache.
Para obter informações sobre como usar a ID do Microsoft Entra com a CLI do Azure, consulte as páginas de referência para identidade.
Instalar a biblioteca para usar a autenticação de ID do Microsoft Entra
A biblioteca Azure.StackExchange.Redis contém o método de autenticação Microsoft Entra ID para se conectar aos serviços Redis do Azure usando o Microsoft Entra ID. É aplicável a todo o Cache do Azure para Redis, Cache do Azure para Redis Enterprise e Azure Managed Redis (Pré-visualização).
dotnet add package Microsoft.Azure.StackExchangeRedis
Conectar-se ao cache usando o Microsoft Entra ID
Incluir as bibliotecas no seu código
using Azure.Identity; using StackExchange.Redis
Usando as credenciais padrão do Azure para autenticar a conexão do cliente. Isso permite que seu código use a credencial de usuário conectado ao ser executado localmente e uma identidade gerenciada do Azure ao ser executado no Azure sem alteração de código.
var configurationOptions = await ConfigurationOptions.Parse($"{_redisHostName}").ConfigureForAzureWithTokenCredentialAsync(new DefaultAzureCredential()); ConnectionMultiplexer _newConnection = await ConnectionMultiplexer.ConnectAsync(configurationOptions); IDatabase Database = _newConnection.GetDatabase();
Para editar o arquivo appsettings.json
Edite o arquivo appsettings.json . Em seguida, adicione o seguinte conteúdo:
"_redisHostName":"<cache-hostname>"
Substitua
<cache-hostname>
pelo nome do host do cache conforme ele aparece na folha Visão geral do Portal do Azure.Por exemplo, com o Azure Managed Redis ou as camadas Enterprise: my-redis.eastus.azure.net:10000
Guarde o ficheiro.
Para obter mais informações, consulte StackExchange.Redis e o código em um repositório GitHub.
Para editar o arquivo appsettings.json
Edite o arquivo appsettings.json . Em seguida, adicione o seguinte conteúdo:
"_redisHostName":"<cache-hostname>"
Substitua
<cache-hostname>
pelo nome do host do cache conforme ele aparece na folha Visão geral do Portal do Azure.Por exemplo, com o Cache do Azure para Redis: my-redis.eastus.azure.net:6380
Guarde o ficheiro.
Para obter mais informações, consulte StackExchange.Redis e o código em um repositório GitHub.
Executar a aplicação localmente
Execute o seguinte comando na janela de comandos para criar a aplicação:
dotnet build
Em seguida, execute a aplicação com o comando seguinte:
dotnet run
Navegue até no
https://localhost:5001
seu navegador da Web.Selecione Cache do Azure para Teste Redis na barra de navegação da página da Web para testar o acesso ao cache.
Clean up resources (Limpar recursos)
Se quiser continuar a usar os recursos criados neste artigo, mantenha o grupo de recursos.
Caso contrário, se tiver terminado os recursos, pode eliminar o grupo de recursos do Azure que criou para evitar cobranças.
Importante
A eliminação de um grupo de recursos é irreversível. Quando elimina um grupo de recursos, todos os recursos nele contidos são eliminados permanentemente. Confirme que não elimina acidentalmente o grupo de recursos ou recursos errados. Se você criou os recursos dentro de um grupo de recursos existente que contém recursos que deseja manter, poderá excluir cada recurso individualmente em vez de excluir o grupo de recursos.
Para eliminar um grupo de recursos
Inicie sessão no Portal do Azure e selecione Grupos de recursos.
Selecione o grupo de recursos que pretende eliminar.
Se houver muitos grupos de recursos, use a caixa Filtrar para qualquer campo... , digite o nome do grupo de recursos criado para este artigo. Selecione o grupo de recursos na lista de resultados.
Selecione Eliminar grupo de recursos.
É-lhe pedido que confirme a eliminação do grupo de recursos. Escreva o nome do grupo de recursos para confirmar e, em seguida, selecione Eliminar.
Após alguns instantes, o grupo de recursos e todos os respetivos recursos são eliminados.