Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. 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 suportadas pela biblioteca de Identidade do Azure.
- Utilize um corretor para gerir credenciais.
- Use um service principal.
Este artigo explica como autenticar usando uma conta de desenvolvedor com ferramentas suportadas pela biblioteca de Identidade do Azure. Nas seções a seguir, você aprende:
- Como usar os grupos do Microsoft Entra para gerenciar com eficiência as permissões para várias contas de desenvolvedor.
- Como atribuir funções a contas de desenvolvedor para definir o escopo das permissões.
- Como iniciar sessão em ferramentas de desenvolvimento local suportadas.
- Como autenticar usando uma conta de desenvolvedor a partir do código do seu aplicativo.
Ferramentas de desenvolvedor suportadas para autenticação
Para que um aplicativo se autentique no Azure durante o desenvolvimento local usando as credenciais do Azure do desenvolvedor, o desenvolvedor deve estar conectado ao Azure a partir de uma das seguintes ferramentas de desenvolvedor:
- CLI do Azure
- Azure Developer CLI
- Azure PowerShell
- Visual Studio
- Código do Visual Studio
A biblioteca de Identidades do Azure pode detetar que o desenvolvedor está conectado a partir de uma dessas ferramentas. A biblioteca pode, então, obter o token de acesso do Microsoft Entra através da ferramenta para autenticar a aplicação no Azure como um utilizador autenticado.
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 as exigidas pelo aplicativo, excedendo assim as permissões com as quais o aplicativo é executado em produção. Como alternativa, pode-se criar principais de serviço da aplicação para usar durante o desenvolvimento local, que podem ser configurados para terem apenas o acesso necessário para a aplicação.
Criar um grupo do Microsoft Entra para desenvolvimento local
Crie um grupo do Microsoft Entra para encapsular as funções (permissões) de que o aplicativo precisa no desenvolvimento local, em vez de atribuir as funções a objetos principais de serviço individuais. Esta 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 programador ingressar na equipa, um novo principal de serviço da aplicação será criado para o programador e adicionado ao grupo, garantindo que o programador tenha as permissões certas para trabalhar na aplicação.
- Portal do Azure
- CLI do Azure
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 de grupo, preencha os seguintes campos de formulário:
- Tipo de grupo: Selecionar segurança .
- Nome do grupo: insira um nome para o grupo que inclua uma referência ao nome do aplicativo ou ambiente.
- Descrição do grupo: Insira uma descrição que explique a finalidade do grupo.
Selecione o link Sem membros selecionados sob Membros para adicionar membros ao grupo.
No painel suspenso que se abre, procure a entidade de serviço que criou anteriormente e selecione-a nos resultados filtrados. Escolha o botão Selecionar na parte inferior do painel para confirmar a 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 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 do Microsoft Entra que você criou. Os grupos podem receber uma função no recurso, no grupo de recursos ou no escopo de assinatura. Este exemplo mostra como atribuir funções no escopo do grupo de recursos, já que a maioria dos aplicativos agrupa todos os seus recursos do Azure em um único grupo de recursos.
- Portal do Azure
- CLI do Azure
No portal do Azure, navegue até a página Visão Geral do grupo de recursos que contém a sua aplicação.
Selecione controle de acesso (IAM) na navegação à esquerda.
Na página Controle de acesso (IAM), selecione + Adicionar e, em seguida, 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 deseja atribuir. Selecione a função e, em seguida, escolha Avançar.
No separador Membros:
- Para a Atribuir acesso ao valor, selecione Utilizador, grupo ou principal do serviço.
- Para o valor de Membros , escolha + Selecionar Membros para abrir o painel suspenso Selecionar Membros.
- Procure o grupo do Microsoft Entra criado anteriormente e selecione-o nos resultados filtrados. Escolha e depois selecione para selecionar o grupo e fechar o painel de pop-up.
- Selecione Rever + atribuir na parte inferior da aba Membros.
No separador Rever + atribuir, selecione Rever + atribuir na parte de baixo da página.
Entrar no Azure usando ferramentas de desenvolvedor
Em seguida, entre no Azure usando uma das várias ferramentas de desenvolvedor que podem ser usadas para executar a autenticação em seu ambiente de desenvolvimento. A conta que você autenticar também deve existir no grupo do Microsoft Entra que você criou e configurou anteriormente.
- Estúdio Visual
- Código do Visual Studio
- CLI do Azure
- CLI do Developer do Azure
- Azure PowerShell
Os desenvolvedores que usam o Visual Studio 2017 ou posterior podem se autenticar usando sua conta de desenvolvedor por meio do IDE. Os aplicativos que usam DefaultAzureCredential ou VisualStudioCredential podem descobrir e usar essa conta para autenticar solicitações de aplicativos quando executados localmente. Essa conta também é usada quando você publica aplicativos diretamente do Visual Studio no Azure.
Importante
Você precisará instalar o workload de desenvolvimento do Azure para ativar as ferramentas do Visual Studio para autenticação, desenvolvimento e implantação do Azure.
Dentro do Visual Studio, navegue até Ferramentas>Opções para abrir a caixa de diálogo de opções.
Na caixa Opções de Pesquisa na parte superior, digite Azure para filtrar as opções disponíveis.
Em "Autenticação de Serviço do Azure", escolha "Seleção de Conta".
Selecione o menu suspenso em Escolha uma conta e adicione uma conta da Microsoft.
Na janela que se abre, introduza as credenciais da sua conta do Azure pretendida e, em seguida, confirme as suas entradas.
Selecione OK para fechar a caixa de diálogo de opções.
Autenticar nos serviços do Azure a partir da sua aplicação
A biblioteca Azure Identity fornece implementações TokenCredential que suportam vários cenários e fluxos de autenticação Microsoft Entra. Os passos seguintes demonstram como usar DefaultAzureCredential uma credencial específica de ferramenta de desenvolvimento ao trabalhar com contas de utilizador localmente.
Implementar o código
Conclua as seguintes etapas:
Adicione referências aos pacotes Azure.Identity e Microsoft.Extensions.Azure no seu projeto:
dotnet add package Azure.Identity dotnet add package Microsoft.Extensions.AzureEm
Program.cs, adicione diretivas para os espaços de nomesAzure.IdentityeMicrosoft.Extensions.Azure.Registe o cliente de serviço do Azure utilizando o método de extensão com o prefixo
Addcorrespondente.Os serviços Azure são acedidos através de classes clientes especializadas das bibliotecas de clientes do Azure SDK. Registe estes tipos de clientes para que possas aceder a eles através de injeção de dependências na tua aplicação.
Passa uma
TokenCredentialinstância aoUseCredentialmétodo. Exemplos comunsTokenCredentialincluem:Uma
DefaultAzureCredentialinstância otimizada para desenvolvimento local. Este exemplo define a variávelAZURE_TOKEN_CREDENTIALSde ambiente paradev. Para obter mais informações, consulte Excluir uma categoria de tipo de credencial.builder.Services.AddAzureClients(clientBuilder => { clientBuilder.AddBlobServiceClient( new Uri("https://<account-name>.blob.core.windows.net")); DefaultAzureCredential credential = new( DefaultAzureCredential.DefaultEnvironmentVariableName); clientBuilder.UseCredential(credential); });Uma instância de credencial correspondente a uma ferramenta de desenvolvimento específica, como
VisualStudioCredential.builder.Services.AddAzureClients(clientBuilder => { clientBuilder.AddBlobServiceClient( new Uri("https://<account-name>.blob.core.windows.net")); VisualStudioCredential credential = new(); clientBuilder.UseCredential(credential); });
Sugestão
Quando a sua equipa utiliza várias ferramentas de desenvolvimento para autenticar com o Azure, deve preferir uma instância otimizada para desenvolvimento local em vez de credenciais específicas da ferramenta
DefaultAzureCredential.