Início Rápido: Usar um Cache Redis do Azure no .NET Framework
Neste guia de início rápido, você incorporará o Cache do Azure para Redis a um aplicativo .NET Framework para ter acesso a um cache seguro e dedicado que pode ser acessado de qualquer aplicativo no Azure. Você especificamente usará o cliente StackExchange.Redis com o código C# em um aplicativo de console do .NET.
Pular para o código no GitHub
Clone o repositório de Azure-Samples/azure-cache-redis-samples no GitHub.
Pré-requisitos
- Assinatura do Azure - criar uma gratuitamente
- Visual Studio 2019
- O .NET Framework 4 ou superior é exigido pelo cliente StackExchange.Redis.
Criar uma instância do Redis Gerenciado do Azure (versão prévia)
Para criar uma instância do Redis Gerenciado do Azure (versão prévia), entre no portal do Azure e selecione Criar um recurso.
Na página Novo, digite Cache do Azure para Redis na caixa de pesquisa.
Na página Novo Cache Redis, defina as configurações para o novo cache.
Configuração Escolher um valor Descrição Assinatura Clique na lista suspensa e selecione sua assinatura. A assinatura sob a qual essa nova instância do Redis Gerenciado do Azure será criada. Grupo de recursos Clique na lista suspensa e selecione um grupo de recursos ou selecione Criar e insira um novo nome de grupo de recursos. Nome do grupo de recursos no qual o cache e outros recursos serão criados. Ao colocar todos os seus recursos de aplicativos em um só grupo de recursos, você pode gerenciá-los ou excluí-los juntos com facilidade. Nome DNS Insira um nome que seja exclusivo na região. O nome do cache deve conter de 1 a 63 caracteres quando combinado com o nome da região do cache que contém apenas números, letras ou hifens. (Se o nome do cache tiver menos de 45 caracteres, ele deverá funcionar em todas as regiões disponíveis no momento.) O nome precisa começar e terminar com um número ou uma letra e não pode conter hifens consecutivos. O nome do host da instância de cache é \<DNS name\>.\<Azure region\>.redis.azure.net
.Localidade Clique na lista suspensa e selecione uma localização. O Redis Gerenciado do Azure está disponível em regiões selecionadas do Azure. Tipo de cache Selecione o nível de desempenho e o tamanho do cache no menu suspenso. O nível determina o desempenho da instância do Redis, enquanto o tamanho do cache determina a memória disponível para armazenar os dados. Para obter orientação sobre como escolher o nível de desempenho adequado, consulte Escolher o nível correto Selecione Avançar: Rede e selecione um ponto de extremidade privado ou público.
Selecione Próximo: Avançado.
Configure os módulos do Redis que você deseja adicionar à instância.
Por padrão, para um cache gerenciado novo:
- O Microsoft Entra ID está habilitado.
- Autenticação de Chaves de Acesso está desabilitada por motivos de segurança.
Importante
Para otimizar a segurança, recomendamos usar o Microsoft Entra ID com identidades gerenciadas a fim de autorizar solicitações no cache, se possível. A autorização usando o Microsoft Entra ID e identidades gerenciadas oferece segurança superior e facilidade de uso em relação à autorização de chave de acesso compartilhada. Para saber como usar as identidades gerenciadas com o cache, confira Usar o Microsoft Entra ID para autenticação de cache.
Defina a política de clustering como Enterprise para um cache não clusterizado ou para o OSS para um cache clusterizado. Para obter mais informações sobre como escolher Política de cluster, veja Política de cluster.
Se você estiver usando Replicação geográfica ativa, ela deverá ser configurada durante a criação. Para obter mais informações, confira Configurar a replicação geográfica ativa para instâncias do Azure Managed Redis.
Importante
Não é possível alterar a política de cluster de uma instância do Redis gerenciado do Azure (versão prévia) depois de criá-la. Caso esteja usando o RediSearch, a política de cluster do Enterprise será necessária e
NoEviction
será a única política de remoção com suporte.Importante
Caso esteja 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. Lembre-se saber sobre as políticas de remoção dos nós primários antes de criar o cache. Para saber mais sobre a replicação geográfica ativa, confira Pré-requisitos da 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ê criar uma instância de 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 Avançar: Marcas e ignore.
Selecione Avançar: Revisar + criar.
Examine as configurações e selecione Criar.
A criação da instância do Redis leva vários minutos. O progresso pode ser monitorado na página Visão geral do Redis gerenciado do Azure. Quando o Status for mostrado como Em execução, o cache estará pronto para uso.
Criar uma instância de Cache do Azure para Redis
Para criar um cache, entre no portal do Azure. No menu do portal, selecione Criar recurso.
Na página Introdução, insira Cache do Azure para Redis na barra de pesquisa. Nos resultados da pesquisa, localize Cache do Azure para Redis e selecione Criar.
No painel Novo Cache Redis, na guia Básico, defina as seguintes configurações para o cache:
Configuração Ação Descrição Assinatura Selecione sua assinatura do Azure. A assinatura a ser usada para criar a 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 em que você criará o cache e outros recursos. Ao colocar todos os seus recursos de aplicativos em um só grupo de recursos, você pode gerenciá-los ou excluí-los juntos com facilidade. Nome DNS Insira um nome exclusivo. O nome do cache precisa ser uma cadeia de caracteres com 1 a 63 caracteres contendo somente números, letras e hifens. O nome deve começar e terminar com um número ou uma letra e não pode conter hifens consecutivos. O nome do host da instância de cache é \<DNS name>.redis.cache.windows.net
.Localidade Selecione uma localização. Uma região do Azure que esteja próxima a outros serviços que usam o cache. Cache SKU Selecione um SKU. O SKU determina os parâmetros de tamanho, desempenho e 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 clique em Avançar: rede.
Na guia Rede, selecione um método de conectividade a ser usado para o cache.
Selecione a guia Avançado ou clique em 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 Básico ou Standard, é possível escolher a seleção de uma porta não TLS.
- Para caches Standard e Premium, é possível optar por habilitar zonas de disponibilidade. Não é possível desabilitar 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 otimizar a segurança, recomendamos usar o Microsoft Entra ID com identidades gerenciadas a fim de autorizar solicitações no cache, se possível. A autorização usando o Microsoft Entra ID e identidades gerenciadas oferece segurança superior e facilidade de uso em relação à autorização de chave de acesso compartilhada. Para saber como usar as identidades gerenciadas com o cache, confira Usar o Microsoft Entra ID para autenticação de cache.
(Opcional) Selecione a guia Categorias ou clique em Avançar: categorias.
(Opcional) Na guia Categorias, insira um nome e um valor de categoria se você quiser categorizar o recurso de cache.
Selecione o botão Revisar + criar.
Na guia Examinar + criar, o Azure valida a configuração automaticamente.
Depois que a mensagem em verde Validação aprovada for exibida, selecione Criar.
Uma nova implantação de cache ocorre durante diversos minutos. Você pode monitorar o progresso da implantação no painel Visão Geral do Cache do Azure para Redis. Quando o Status mostrar Em execução, o cache estará pronto para uso.
Usar a autenticação do Microsoft Entra ID em seu cache
Os caches Redis do Azure, exceto as camadas Enterprise e Enterprise Flash, têm a Autenticação do Microsoft Entra habilitada por padrão. As teclas de acesso estão desativadas por padrão.
Importante
A Microsoft recomenda o uso da autenticação do 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 apresentam riscos que não estão presentes ao usar o Microsoft Entra ID. Use a abordagem desse documento somente quando a autenticação do Microsoft Entra ID não for viável.
No portal do Azure, selecione o cache em que você deseja usar a autenticação baseada em token do Microsoft Entra.
Selecione Autenticação no menu Recurso.
Selecione Selecionar membro e insira 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 à instância de cache.
Para obter informações sobre como usar o Microsoft Entra ID com a CLI do Azure, confira as páginas de referência de identidade.
Instalar a biblioteca para usar a Autenticação do Microsoft Entra ID
A biblioteca Azure.StackExchange.Redis contém o método de autenticação do Microsoft Entra ID para se conectar aos serviços do Azure Redis usando o Microsoft Entra ID. Ela é aplicável ao Cache do Azure para Redis, Cache do Azure para Redis Enterprise e Redis Gerenciado do Azure (versão prévia).
Abra o projeto no Visual Studio
Clique com o botão direito do mouse no projeto, escolha Gerenciar Pacotes NuGet...
Pesquise por
Microsoft.Azure.StackExchangeRedis
Clique no botão Instalar para instalar
Aceitar todo o conteúdo solicitado para concluir a instalação
Conectar-se ao cache usando o Microsoft Entra ID
Incluir as bibliotecas em 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 o 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 app.config
Edite o arquivo app.config adicionando o seguinte conteúdo:
<appSettings> <add key="RedisHostName" value="<cache-hostname-with-portnumber>"/> </appSettings>
Substitua
<cache-hostname>
pelo nome do host do cache conforme ele aparece em Visão geral, no menu Recurso no portal do Azure.Por exemplo, com o Redis Gerenciado do Azure ou as camadas Enterprise: my-redis.eastus.azure.net:10000
Salve o arquivo.
Para obter mais informações, confira StackExchange.Redis e o código em um repositório GitHub.
Para editar o arquivo app.config
Edite o arquivo app.config adicionando o seguinte conteúdo:
<appSettings> <add key="RedisHostName" value="<cache-hostname-with-portnumber>"/> </appSettings>
Substitua
<cache-hostname>
pelo nome do host do cache conforme ele aparece em Visão geral, no menu Recurso no portal do Azure.Por exemplo, com o Cache do Azure para Redis: my-redis.eastus.azure.net:6380
Salve o arquivo.
Para obter mais informações, confira StackExchange.Redis e o código em um repositório GitHub.
Execute o exemplo
Pressione Ctrl + F5 para compilar e executar o aplicativo de console para testar a serialização de objetos .NET.
Limpar os recursos
Se quiser continuar a usar os recursos que você criou neste artigo, conserve o grupo de recursos.
Caso contrário, se não pretende mais usar os recursos, você poderá excluir o grupo de recursos criado no Azure para evitar a cobrança.
Importante
A exclusão de um grupo de recursos é irreversível. Ao excluir o grupo de recursos, todos os recursos nele são excluídos permanentemente. Não exclua acidentalmente o grupo de recursos ou os recursos incorretos. Se você criou os recursos dentro de um grupo de recursos existente que contém recursos que você quer manter, você pode excluir cada recurso individualmente em vez de excluir o grupo de recursos.
Para excluir um grupo de recursos
Entre no portal do Azure e selecione Grupos de recursos.
Selecione o grupo de recursos que você quer excluir.
Se existirem muitos grupos de recursos, use a caixa Filtrar para qualquer campo... e digite o nome do seu grupo de recursos que você criou para este artigo. Selecione o grupo de recursos na lista de resultados.
Selecione Excluir grupo de recursos.
Você receberá uma solicitação para confirmar a exclusão do grupo de recursos. Digite o nome do grupo de recursos para confirmar e selecione Excluir.
Após alguns instantes, o grupo de recursos, e todos os recursos nele são excluídos.