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.
As aplicações podem usar a biblioteca Azure Identity para autenticar no Microsoft Entra ID, o que permite às aplicações aceder a serviços e recursos do Azure. Este requisito de autenticação aplica-se quer a aplicação seja implementada no Azure, alojada localmente ou a correr localmente numa estação de trabalho de programador. As secções seguintes descrevem as abordagens recomendadas para autenticar uma aplicação para o Microsoft Entra ID em diferentes ambientes ao utilizar as bibliotecas cliente do Azure SDK.
Abordagem recomendada para autenticação de aplicativos
A autenticação baseada em token via Microsoft Entra ID é a abordagem recomendada para autenticar aplicações no Azure, em vez de usar cadeias de ligação ou opções baseadas em chaves. A biblioteca Azure Identity fornece classes que suportam autenticação baseada em tokens e permitem que aplicações autentiquem em Azure recursos, quer a aplicação corra localmente, em Azure ou num servidor local.
Vantagens da autenticação baseada em tokens
A autenticação baseada em tokens oferece as seguintes vantagens em relação às cadeias de conexão:
- A autenticação baseada em tokens garante que apenas as aplicações específicas destinadas a aceder ao recurso Azure conseguem fazê-lo, enquanto qualquer pessoa ou qualquer aplicação com uma connection string pode ligar-se a um recurso Azure.
- A autenticação baseada em tokens permite-lhe limitar ainda mais o acesso aos recursos do Azure apenas às permissões específicas necessárias pela aplicação. Isto segue o princípio do menor privilégio. Em contraste, uma connection string concede direitos completos ao recurso Azure.
- Ao usar uma identidade gerida para autenticação baseada em tokens, a Azure trata das funções administrativas por si. Assim, não precisa de se preocupar com tarefas como proteger ou alterar periodicamente segredos. Isto torna a aplicação mais segura porque não existe nenhum connection string ou segredo de aplicação que possa ser comprometido.
- A biblioteca Azure Identity adquire e gere tokens Microsoft Entra para si.
O uso de cadeias de conexão deve ser limitado a cenários em que a autenticação baseada em tokens não é uma opção, aplicativos iniciais de prova de conceito ou protótipos de desenvolvimento que não acessam dados confidenciais ou de produção. Sempre que possível, utilize as classes de autenticação baseadas em tokens disponíveis na biblioteca Azure Identity para autenticar nos recursos do Azure.
Autenticação em diferentes ambientes
O tipo específico de autenticação baseada em tokens que uma aplicação deve usar para autenticar nos recursos do Azure depende de onde a aplicação é executada. O diagrama a seguir fornece orientação para diferentes cenários e ambientes:
Quando uma aplicação é:
- Alojado em Azure: A aplicação deve autenticar-se aos recursos do Azure com uma identidade gerida. Essa opção é discutida com mais detalhes em autenticação em ambientes de servidor.
- A correr localmente durante o desenvolvimento: A aplicação pode autenticar-se para Azure usando uma conta developer, uma conta broker ou um principal de serviço. Cada opção é discutida com mais detalhes na seção sobre autenticação durante o desenvolvimento local.
- Alojado localmente: A aplicação deve autenticar-se a recursos Azure usando um principal de serviço da aplicação ou uma identidade gerida no caso de Azure Arc. Os fluxos de trabalho locais são discutidos com mais detalhe em Autenticação para aplicações alojadas localmente.
Autenticação para aplicações alojadas no Azure
Quando a sua aplicação está alojada no Azure, pode usar identidades geridas para autenticar nos recursos do Azure sem precisar de gerir quaisquer credenciais. Existem dois tipos de identidades gerenciadas: atribuídas pelo usuário e atribuídas pelo sistema.
Usar uma identidade gerenciada atribuída pelo usuário
Uma identidade gerida atribuída pelo utilizador é criada como um recurso Azure autónomo. Pode ser atribuído a um ou mais recursos do Azure, permitindo que esses recursos partilhem a mesma identidade e permissões. Para autenticar usando uma identidade gerida atribuída pelo utilizador, crie a identidade, atribua-a ao seu recurso Azure e depois configure a sua aplicação para usar essa identidade para autenticação, especificando o seu ID de cliente, ID de recurso ou ID de objeto.
Usar uma identidade gerenciada atribuída ao sistema
Uma identidade gerida atribuída pelo sistema é ativada diretamente num recurso Azure. A identidade está vinculada ao ciclo de vida desse recurso e é excluída automaticamente quando o recurso é excluído. Para autenticar usando uma identidade gerida atribuída pelo sistema, ativa a identidade no teu recurso Azure e depois configura a tua aplicação para usar essa identidade para autenticação.
Autenticação durante o desenvolvimento local
Durante o desenvolvimento local, pode autenticar-se em recursos do Azure usando as suas credenciais de programador ou um principal de serviço. Isto permite-lhe testar a lógica de autenticação da sua aplicação sem a implementar no Azure.
Usar credenciais de desenvolvedor
Pode usar as suas próprias credenciais do Azure para autenticar nos recursos do Azure durante o desenvolvimento local. Isto é normalmente feito através de uma ferramenta de desenvolvimento, como o Azure CLI ou o Visual Studio Code, que pode fornecer à sua aplicação os tokens necessários para aceder aos serviços do Azure. Este método é conveniente, mas só deve ser usado para fins de desenvolvimento.
Use um intermediário
A autenticação intermediada coleta credenciais de usuário usando o agente de autenticação do sistema para autenticar um aplicativo. Um broker de autenticação do sistema funciona no computador de um utilizador e gere os processos de verificação de autenticação e a manutenção de tokens para todas as contas associadas.
Usar uma entidade de serviço
Um principal de serviço é criado num tenant Microsoft Entra para representar uma aplicação e ser usado para autenticar em recursos do Azure. Você pode configurar seu aplicativo para usar credenciais da entidade de serviço durante o desenvolvimento local. Esse método é mais seguro do que usar credenciais de desenvolvedor e está mais próximo de como seu aplicativo será autenticado na produção. No entanto, ainda é menos ideal do que usar uma identidade gerenciada devido à necessidade de segredos.
Autenticação para aplicativos hospedados no local
Para aplicações alojadas on-premises, pode usar um principal de serviço para autenticar nos recursos do Azure. Isto envolve criar um principal de serviço no Microsoft Entra ID, atribuir-lhe as permissões necessárias e configurar a sua aplicação para usar as suas credenciais. Este método permite que a sua aplicação local aceda de forma segura aos serviços do Azure.