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. Este artigo descreve as abordagens recomendadas para autenticar uma aplicação para o Microsoft Entra ID em diferentes ambientes ao utilizar as bibliotecas clientes do Azure SDK.
Abordagem recomendada para autenticação de aplicativos
A autenticação baseada em token através do 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 de identidade Azure fornece classes que suportam autenticação baseada em tokens e permitem que aplicações se autentiquem em recursos Azure, 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 podem aceder a ele, 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 o acesso aos recursos do Azure apenas às permissões específicas necessárias pela aplicação. Esta abordagem segue o princípio do menor privilégio. Em contraste, uma connection string concede direitos completos ao recurso Azure.
- Quando usa uma identidade gerida para autenticação baseada em token, a Azure trata das funções administrativas por si, por isso não precisa de se preocupar com tarefas como proteger ou atualizar segredos. Esta abordagem torna a aplicação mais segura porque não existe uma connection string ou um segredo de aplicação que possa ser comprometido.
- A biblioteca Azure Identity adquire e gere tokens Microsoft Entra para si.
Limitar o uso de cadeias de ligação a cenários onde a autenticação baseada em token não seja uma opção, aplicações iniciais de prova de conceito ou protótipos de desenvolvimento que não acedam a dados de produção ou sensíveis. 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 no Azure: A aplicação deve autenticar-se nos recursos do Azure através de uma identidade gerida. Para mais informações, consulte a secção Autenticação para aplicações alojadas em Azure.
- A correr localmente durante o desenvolvimento: A aplicação pode autenticar-se a Azure usando uma conta desenvolvedor, um broker, ou um principal de serviço. Para mais informações, consulte a secção 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 hospeda a sua aplicação no Azure, ela pode usar identidades geridas para autenticar nos recursos do Azure sem necessidade de gerir quaisquer credenciais. Estão disponíveis dois tipos de identidades geridas: atribuídas pelo utilizador e atribuídas pelo sistema.
Usar uma identidade gerenciada atribuída pelo usuário
Pode criar uma identidade gerida atribuída pelo utilizador como um recurso Azure autónomo. Depois podes atribuí-lo a um ou mais recursos do Azure para que esses recursos possam partilhar 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
Pode ativar uma identidade gerida atribuída pelo sistema 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, ative a identidade no seu recurso Azure e depois configure a sua 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, um corretor ou um principal de serviço. Ao usar um destes métodos, pode 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. Normalmente, utiliza-se uma ferramenta de desenvolvimento como Azure CLI, Azure Developer CLI, Azure PowerShell, Visual Studio Code ou IntelliJ IDEA. Estas ferramentas podem fornecer à sua aplicação os tokens necessários para aceder aos serviços do Azure. Este método é conveniente, mas deve usá-lo apenas 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
Pode criar um principal de serviço num tenant Microsoft Entra para representar uma aplicação e autenticar nos 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 se autentica 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.