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 para Azure para acessar vários serviços Azure. Você pode autenticar localmente usando uma das seguintes abordagens:
- Use uma conta de desenvolvedor com uma das ferramentas de desenvolvedor compatíveis com a biblioteca de identidade Azure.
- Use uma entidade de serviço. Para obter mais informações, consulte Autenticar aplicativos Java nos serviços do Azure no desenvolvimento local usando entidades de serviço.
Este artigo explica como autenticar usando uma conta de desenvolvedor com ferramentas compatíveis com a biblioteca de identidades do Azure. Neste artigo, você aprende:
- Como usar Microsoft Entra grupos 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 que oferecem suporte ao desenvolvimento local.
- Como autenticar usando uma conta de desenvolvedor do código do aplicativo.
Ferramentas de desenvolvedor com suporte para autenticação
Durante o desenvolvimento local, um aplicativo pode autenticar para Azure usando suas credenciais de Azure. Para que essa autenticação funcione, você deve estar conectado ao Azure de uma ferramenta de desenvolvedor, como uma das seguintes:
- Azure CLI
- CLI do desenvolvedor do Azure
- Azure PowerShell
- Visual Studio Code
- Ideia do IntelliJ
A biblioteca Azure Identity pode detectar que o desenvolvedor está conectado a partir de uma dessas ferramentas. Em seguida, a biblioteca pode obter o token de acesso Microsoft Entra por meio da ferramenta para autenticar o aplicativo no Azure como o usuário que fez login.
Essa abordagem aproveita as contas de Azure existentes do desenvolvedor para simplificar o processo de autenticação. No entanto, a conta de um desenvolvedor provavelmente tem mais permissões do que o aplicativo requer, 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 de Microsoft Entra para desenvolvimento local
Crie um grupo do Microsoft Entra para encapsular as funções (permissões) que o aplicativo precisa no desenvolvimento local, em vez de atribuir as funções a objetos principal 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 Microsoft Entra ID no portal 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 de Microsoft Entra criado. 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 seus recursos Azure em um único grupo de recursos.
No portal Azure, navegue até a página Overview 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 de 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.
Entre no Azure usando ferramentas de desenvolvedor
Em seguida, entre no Azure usando uma das ferramentas de desenvolvedor que você pode usar para executar a autenticação em seu ambiente de desenvolvimento. A conta autenticada também deve existir no grupo de Microsoft Entra que você criou e configurou anteriormente.
Os desenvolvedores que usam 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 contínuo.
Em Visual Studio Code, acesse o painel Extensions e instale a extensão Azure Resources. Essa extensão permite exibir e gerenciar Azure recursos diretamente de Visual Studio Code. Ele também usa o provedor de autenticação interno Visual Studio Code Microsoft para autenticar com 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.
Autenticar nos serviços do Azure a partir do seu aplicativo
A biblioteca Azure Identity fornece implementações de TokenCredential que dão suporte a vários cenários e fluxos de autenticação Microsoft Entra. As etapas a seguir mostram 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 a dependência
azure-identityao arquivopom.xml:<dependency> <groupId>com.azure</groupId> <artifactId>azure-identity</artifactId> </dependency>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 instância de TokenCredential correspondente a uma ferramenta de desenvolvimento específica para o construtor do cliente de serviço Azure, como AzureCliCredential.
import com.azure.identity.AzureCliCredential;
import com.azure.identity.AzureCliCredentialBuilder;
import com.azure.security.keyvault.secrets.SecretClient;
import com.azure.security.keyvault.secrets.SecretClientBuilder;
AzureCliCredential credential = new AzureCliCredentialBuilder().build();
SecretClient client = new SecretClientBuilder()
.vaultUrl("https://<your-key-vault-name>.vault.azure.net")
.credential(credential)
.buildClient();
Cada credencial de ferramenta segue o mesmo padrão. Substitua o tipo de credencial e seu construtor correspondente conforme necessário:
AzureCliCredential/AzureCliCredentialBuilderAzureDeveloperCliCredential/AzureDeveloperCliCredentialBuilderAzurePowerShellCredential/AzurePowerShellCredentialBuilderIntelliJCredential/IntelliJCredentialBuilderVisualStudioCodeCredential/VisualStudioCodeCredentialBuilder
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.
import com.azure.identity.DefaultAzureCredential;
import com.azure.identity.DefaultAzureCredentialBuilder;
import com.azure.security.keyvault.secrets.SecretClient;
import com.azure.security.keyvault.secrets.SecretClientBuilder;
DefaultAzureCredential credential = new DefaultAzureCredentialBuilder()
.requireEnvVars(AzureIdentityEnvVars.AZURE_TOKEN_CREDENTIALS)
.build();
SecretClient client = new SecretClientBuilder()
.vaultUrl("https://<your-key-vault-name>.vault.azure.net")
.credential(credential)
.buildClient();
Próximas Etapas
Este artigo abordou a autenticação durante o desenvolvimento usando credenciais disponíveis em seu computador. Essa forma de autenticação é uma das várias maneiras pelas quais você pode se autenticar no Azure SDK para Java. Os artigos a seguir descrevem outras maneiras:
- Autentique aplicativos Java nos serviços do Azure durante o desenvolvimento local usando princípios de serviço
- Autentique aplicativos Java hospedados no Azure a recursos do Azure usando uma identidade gerenciada atribuída pelo sistema
- Autentique aplicativos Java hospedados no Azure para recursos do Azure usando uma identidade gerenciada atribuída ao usuário
Se você encontrar problemas relacionados à autenticação do ambiente de desenvolvimento, consulte Solucionar problemas de autenticação de ambiente de desenvolvimento.
Depois de dominar a autenticação, consulte Configurar o log no Azure SDK para Java para obter informações sobre a funcionalidade de registro em log fornecida pelo SDK.