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
- Visual Studio Code
A biblioteca de Identidades do Azure pode detectar que o desenvolvedor está conectado a partir de uma dessas ferramentas. Assim, a biblioteca pode obter o token de acesso do Microsoft Entra pela ferramenta para autenticar o aplicativo no Azure como o usuário conectado.
Essa abordagem aproveita as contas existentes do Azure do desenvolvedor para simplificar o processo de autenticação. Porém, é provável que a conta de um desenvolvedor tenha mais permissões do que as exigidas pelo aplicativo, excedendo, portanto, as permissões com as quais o aplicativo é executado na 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 terem 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) de que o aplicativo precisa no desenvolvimento local, em vez de atribuir as funções a objetos de entidade 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 for necessária uma nova função 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, pesquise 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 receber uma função no escopo 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 selecionar o grupo e fechar o painel de submenu.
- 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
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 autenticada também deve existir no grupo do Microsoft Entra que você criou e configurou anteriormente.
- Visual Studio
- Código do Visual Studio
- CLI do Azure
- CLI do Desenvolvedor do Azure
- PowerShell do Azure
Os desenvolvedores que usam o Visual Studio 2017 ou posterior podem se autenticar usando sua conta de desenvolvedor por meio do IDE. Aplicativos que usam DefaultAzureCredential ou VisualStudioCredential podem descobrir e usar essa conta para autenticar solicitações de aplicativo ao serem executados localmente. Essa conta também é usada quando você publica aplicativos diretamente do Visual Studio para o Azure.
Importante
Você precisará instalar a carga de trabalho de desenvolvimento do Azure para habilitar as ferramentas do Visual Studio para autenticação, desenvolvimento e implantação do Azure.
No 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 da Conta.
Selecione o menu suspenso em Escolher uma conta e escolha adicionar uma conta da Microsoft.
Na janela que é aberta, insira as credenciais para sua conta desejada do Azure e confirme suas entradas.
Selecione OK para fechar a caixa de diálogo de opções.
Autenticar nos serviços do Azure em seu aplicativo
A biblioteca Azure Identity oferece várias credenciais — implementações TokenCredential adaptadas para dar suporte a diferentes cenários e fluxos de autenticação do Microsoft Entra. As etapas a seguir demonstram como usar DefaultAzureCredential ao trabalhar com contas de usuário localmente.
Implementar o código
DefaultAzureCredential é uma sequência padronizada e ordenada de mecanismos para autenticação no Microsoft Entra ID. Cada mecanismo de autenticação é uma classe derivada da classe TokenCredential e é conhecida como credenciais. No runtime, DefaultAzureCredential tenta autenticar usando a primeira credencial. Se essa credencial não conseguir adquirir um token de acesso, a próxima credencial na sequência será tentada e assim por diante, até que um token de acesso seja obtido com êxito. Dessa forma, seu aplicativo pode usar credenciais diferentes em ambientes diferentes sem escrever código específico para cada ambiente.
Para usar DefaultAzureCredential, adicione os pacotes Azure.Identity e, opcionalmente, os pacotes Microsoft.Extensions.Azure ao seu aplicativo:
Em um terminal da sua escolha, navegue até o diretório do projeto de aplicativo e execute os seguintes comandos:
dotnet add package Azure.Identity
dotnet add package Microsoft.Extensions.Azure
Os serviços do Azure são acessados usando classes de cliente especializadas das várias bibliotecas de clientes do SDK do Azure. Essas classes e seus próprios serviços personalizados devem ser registrados para que possam ser acessados pela injeção de dependência no aplicativo. Em Program.cs, conclua as seguintes etapas para registrar uma classe cliente e DefaultAzureCredential:
- Inclua os namespaces
Azure.IdentityeMicrosoft.Extensions.Azurecom pelas diretivasusing. - Registre o cliente de serviço do Azure usando o método de extensão com prefixo
Addcorrespondente. - Passe uma instância do
DefaultAzureCredentialpara o métodoUseCredential.
builder.Services.AddAzureClients(clientBuilder =>
{
clientBuilder.AddBlobServiceClient(
new Uri("https://<account-name>.blob.core.windows.net"));
clientBuilder.UseCredential(new DefaultAzureCredential());
});
Uma alternativa ao UseCredential método é fornecer a credencial diretamente ao cliente de serviço:
builder.Services.AddSingleton<BlobServiceClient>(_ =>
new BlobServiceClient(
new Uri("https://<account-name>.blob.core.windows.net"),
new DefaultAzureCredential()));
Instalar um pacote usando o gerenciador de pacotes.