Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Durante o desenvolvimento local, os aplicativos precisam se autenticar no Azure para usar diferentes serviços do Azure. Autentique-se localmente usando uma destas abordagens:
- Use uma conta de desenvolvedor com uma das ferramentas de desenvolvedor compatíveis com a biblioteca de Identidade do Azure.
- Use um broker para gerenciar credenciais.
- Use uma entidade de serviço.
Este artigo explica como autenticar usando uma conta de desenvolvedor com ferramentas compatíveis com a biblioteca de Identidades do Azure. Nas seções a seguir, você aprenderá:
- Como usar grupos do Microsoft Entra para gerenciar com eficiência permissões para várias contas de desenvolvedor.
- Como atribuir funções a contas de desenvolvedor para definir o escopo das permissões.
- Como fazer login em ferramentas de desenvolvimento locais compatíveis.
- Como autenticar usando uma conta de desenvolvedor do código do aplicativo.
Ferramentas de desenvolvedor com suporte para autenticação
Para que um aplicativo se autentique no Azure durante o desenvolvimento local usando as credenciais do desenvolvedor do Azure, o desenvolvedor deve estar conectado ao Azure de uma das seguintes ferramentas de desenvolvedor:
- CLI do Azure
- Azure Developer CLI
- Azure PowerShell
- Visual Studio Code
A biblioteca de Identidades do Azure pode detectar que o desenvolvedor está conectado a partir de uma dessas ferramentas. A biblioteca pode usar a ferramenta para obter o token de acesso do Microsoft Entra e autenticar o aplicativo no Azure como o usuário que fez login.
Essa abordagem aproveita as contas existentes do Azure do desenvolvedor para simplificar o processo de autenticação. No entanto, a conta de um desenvolvedor provavelmente tem mais permissões do que o exigido pelo aplicativo, excedendo, portanto, as permissões com as quais o aplicativo é executado em produção. Como alternativa, você pode criar entidades de serviço de aplicativo para usar durante o desenvolvimento local, que podem ter o escopo para ter apenas o acesso necessário pelo aplicativo.
Criar um grupo do Microsoft Entra para desenvolvimento local
Crie um grupo do Microsoft Entra para encapsular as funções (permissões) que o aplicativo precisa durante o desenvolvimento local, em vez de atribuir as funções a objetos principais de serviço individuais. Essa abordagem oferece as seguintes vantagens:
- Cada desenvolvedor tem as mesmas funções atribuídas no nível do grupo.
- Se uma nova função for necessária para o aplicativo, ela só precisará ser adicionada ao grupo do aplicativo.
- Se um novo desenvolvedor ingressar na equipe, um novo principal de serviço de aplicativo será criado para o desenvolvedor e adicionado ao grupo, garantindo que o desenvolvedor tenha as permissões corretas para trabalhar no aplicativo.
Navegue até a página de visão geral do Microsoft Entra ID no portal do Azure.
Selecione Todos os grupos no menu à esquerda.
Na página Grupos , selecione Novo grupo.
Na página Novo grupo , preencha os seguintes campos de formulário:
- Tipo de grupo: selecione Segurança.
- Nome do grupo: insira um nome para o grupo que inclui uma referência ao nome do aplicativo ou do ambiente.
- Descrição do grupo: insira uma descrição que explique a finalidade do grupo.
Selecione o link Nenhum membro selecionado em Membros para adicionar membros ao grupo.
No painel de submenu que é aberto, procure a entidade de serviço que você criou anteriormente e selecione-a nos resultados filtrados. Escolha o botão Selecionar na parte inferior do painel para confirmar sua seleção.
Selecione Criar na parte inferior da página Novo grupo para criar o grupo e retornar à página Todos os grupos . Se você não vir o novo grupo listado, aguarde um momento e atualize a página.
Atribuir funções ao grupo
Em seguida, determine quais funções (permissões) seu aplicativo precisa em quais recursos e atribua essas funções ao grupo Microsoft Entra que você criou. Os grupos podem ser atribuídos a uma função no nível do recurso, do grupo de recursos ou da assinatura. Este exemplo mostra como atribuir funções no escopo do grupo de recursos, já que a maioria dos aplicativos agrupa todos os recursos do Azure em um único grupo de recursos.
No portal do Azure, navegue até a página Visão geral do grupo de recursos que contém seu aplicativo.
Selecione Controle de acesso (IAM) na navegação à esquerda.
Na página controle de acesso (IAM), selecione + Adicionar e escolha Adicionar atribuição de função no menu suspenso. A página Adicionar atribuição de função fornece várias guias para configurar e atribuir funções.
Na guia Função , use a caixa de pesquisa para localizar a função que você deseja atribuir. Selecione a função e escolha Avançar.
Na guia Membros :
- Para atribuir acesso ao valor, selecione Usuário, grupo ou entidade de serviço .
- Para o valor Membros, escolha + Selecionar membros para abrir o painel de seleção Selecionar membros.
- Pesquise o grupo do Microsoft Entra criado anteriormente e selecione-o nos resultados filtrados. Escolha Selecionar para escolher o grupo e fechar o painel de menu.
- Selecione Examinar + atribuir na parte inferior da guia Membros .
Na guia Revisão + atribuição , selecione Examinar + atribuir na parte inferior da página.
Entrar no Azure usando ferramentas de desenvolvedor
Para autenticar com sua conta do Azure, escolha um dos seguintes métodos:
Desenvolvedores que utilizam o Visual Studio Code podem se autenticar com sua conta de desenvolvedor diretamente através do editor usando o intermediário. Os aplicativos que usam DefaultAzureCredential ou VisualStudioCodeCredential podem usar essa conta para autenticar solicitações de aplicativo por meio de uma experiência de logon único perfeita.
No Visual Studio Code, vá para o painel Extensões e instale a extensão de Recursos do Azure . Essa extensão permite exibir e gerenciar recursos do Azure diretamente do Visual Studio Code. Ele também usa o provedor interno de autenticação do Microsoft Visual Studio Code para autenticação com o Azure.
Abra a Paleta de Comandos no Visual Studio Code e, em seguida, pesquise e selecione Azure: Entrar.
Dica
Abra a Paleta de Comandos usando
Ctrl+Shift+Pno Windows/Linux ouCmd+Shift+Pno macOS.Adicione o pacote python
azure-identity-brokerao seu aplicativo:pip install azure-identity-broker
Autenticar nos serviços do Azure em seu aplicativo
A biblioteca de Identidade do Azure fornece implementações de TokenCredential que dão suporte a vários cenários e fluxos de autenticação do Microsoft Entra. As etapas a seguir demonstram como usar DefaultAzureCredential ou uma credencial de ferramenta de desenvolvimento específica ao trabalhar com contas de usuário localmente.
Implementar o código
Adicione o pacote azure-identity ao seu aplicativo:
pip install azure-identityObservação
Ao usar
VisualStudioCodeCredential, você também deve instalar oazure-identity-brokerpacote:pip install azure-identity-brokerAdicione as instruções necessárias
importpara oazure.identitymódulo e o módulo do cliente de serviço do Azure que seu aplicativo requer.Escolha uma das implementações de credencial com base em seu cenário.
- Use uma credencial específica para sua ferramenta de desenvolvimento: essa opção é melhor para cenários de uma única pessoa ou de ferramenta única.
- Use uma credencial disponível para uso em qualquer ferramenta de desenvolvimento: essa opção é melhor para projetos de software livre e equipes de ferramentas diversas.
Use uma credencial específica para sua ferramenta de desenvolvimento
Passe uma TokenCredential instância correspondente a uma ferramenta de desenvolvimento específica para o construtor do cliente de serviço do Azure, como AzureCliCredential.
from azure.identity import AzureCliCredential
from azure.storage.blob import BlobServiceClient
credential = AzureCliCredential()
blob_service_client = BlobServiceClient(
account_url="https://<account-name>.blob.core.windows.net",
credential=credential)
Usar uma credencial disponível para uso em qualquer ferramenta de desenvolvimento
Use uma DefaultAzureCredential instância otimizada para todas as ferramentas de desenvolvimento locais. Este exemplo requer a variável AZURE_TOKEN_CREDENTIALS de ambiente definida como dev. Para obter mais informações, consulte Excluir uma categoria de tipo de credencial.
from azure.identity import DefaultAzureCredential
from azure.storage.blob import BlobServiceClient
credential = DefaultAzureCredential(require_envvar=True)
blob_service_client = BlobServiceClient(
account_url="https://<account-name>.blob.core.windows.net",
credential=credential)
Dica
Quando sua equipe usa várias ferramentas de desenvolvimento para autenticar com o Azure, prefira DefaultAzureCredential em vez de às credenciais específicas da ferramenta.