Início Rápido: Criar um aplicativo Python com o Redis Gerenciado do Azure

Neste artigo, você aprenderá a usar um cache Redis Gerenciado do Azure com a linguagem Python e se conectar usando a ID do Microsoft Entra.

Pré-requisitos

  • Assinatura do Azure - criar uma gratuitamente
  • Instalar o ambiente Python 3.7+
  • Adicione essas importações de seu projeto e ao seu ambiente de desenvolvimento
    • redis - O cliente Python Redis
    • redis-entraid - Extensão de autenticação do Redis para Microsoft Entra ID
    • azure-identity – Biblioteca de autenticação do Azure

Criar uma instância do Redis Gerenciado pelo Azure

Primeiro, crie um cache. Você pode criar um cache usando o Redis Gerenciado do Azure ou o Cache do Azure para Redis usando o portal do Azure. Neste Início Rápido, usamos o Redis Gerenciado do Azure.

Quando você cria o cache, a ID do Microsoft Entra é habilitada por padrão, tornando-a segura desde o início. O seu cache também deve usar um ponto de extremidade público para este Início Rápido.

Para criar um cache com o portal, siga um destes procedimentos:

Opcionalmente, você pode criar um cache usando a CLI do Azure, o PowerShell, o que preferir.

Código para se conectar a um cache Redis

Na primeira parte do exemplo de código, defina sua conexão com o cache.

  • Portas para Redis Gerenciado do Azure e caches Enterprise: 10000
  • Portas para instâncias do Cache do Azure para Redis: 6380
import redis
from azure.identity import DefaultAzureCredential
from redis_entraid.cred_provider import create_from_default_azure_credential

redis_host = "<host-url>"
redis_port = 10000  # Managed Redis default port

credential_provider = create_from_default_azure_credential(
    ("https://redis.azure.com/.default",),
)

r = redis.Redis(
    host=redis_host,
    port=redis_port,
    ssl=True,
    decode_responses=True,
    credential_provider=credential_provider
)

Antes de executar esse código, você deve adicionar-se como um usuário redis ao cache.

Você também deve autorizar sua conexão com o Azure da linha de comando usando a linha de comando do Azure ou a linha de comando do desenvolvedor do Azure (azd).

Você também deve adicionar usuários ou um principal do sistema ao seu cache. Adicione qualquer pessoa que possa executar o programa como um usuário no cache Redis.

O resultado tem esta aparência:

PING: True
GET: Hello from Azure Managed Redis!

Aqui, você pode ver este exemplo de código em sua totalidade. O código contém algumas verificações de erro omitidas das explicações de código anteriores para simplificar. A etapa final é fechar a conexão com o cache.

import redis
from azure.identity import DefaultAzureCredential
from redis_entraid.cred_provider import create_from_default_azure_credential

redis_host = "<host-url>"
redis_port = 10000  # Managed Redis default port

credential_provider = create_from_default_azure_credential(
    ("https://redis.azure.com/.default",),
)

try:
    r = redis.Redis(
        host=redis_host,
        port=redis_port,
        ssl=True,
        decode_responses=True,
        credential_provider=credential_provider,
        socket_timeout=10,
        socket_connect_timeout=10
    )

    print("PING:", r.ping())
    r.set("Message", "Hello from Azure Managed Redis!")
    print("GET:", r.get("Message"))

except Exception as e:
    print(f"Error: {e}")
finally:
    if 'r' in locals():
        r.close()

Limpar os recursos

Se você quiser continuar a usar os recursos criados neste artigo, mantenha o grupo de recursos.

Caso contrário, se tiver terminado de usar os recursos, é possível excluir o grupo de recursos do Azure criado para evitar encargos.

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. Certifique-se de que 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ê deseja manter, é possível excluir cada recurso individualmente em vez de excluir o grupo de recursos.

Para excluir um grupo de recursos

  1. Entre no portal do Azure e selecione Grupos de recursos.

  2. Selecione o grupo de recursos que você quer excluir.

    Se houver muitos grupos de recursos, use a caixa Filtrar por qualquer campo... digite o nome do grupo de recursos que você criou para este artigo. Selecione o grupo de recursos na lista de resultados.

    Captura de tela mostrando uma lista de grupos de recursos para excluir no painel de trabalho.

  3. Selecione Excluir grupo de recursos.

  4. 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.

    Captura de tela mostrando um formulário que requer o nome do recurso para confirmar a exclusão.

Após alguns instantes, o grupo de recursos, e todos os recursos nele são excluídos.