Autenticar-se no Azure Key Vault
A autenticação com o Key Vault funciona com o Microsoft Entra ID, que é responsável por autenticar a identidade de qualquer entidade de segurança determinada. Um principal de segurança é qualquer entidade que possa solicitar acesso aos recursos do Azure. Isso inclui:
- Usuários – Pessoas reais com contas na ID do Microsoft Entra.
- Grupos – coleções de usuários. As permissões fornecidas ao grupo se aplicam a todos os seus membros.
- Principais de Serviço – Representam aplicativos ou serviços (não pessoas). Pense nisso como uma conta de usuário para um aplicativo.
Para aplicativos, há duas maneiras principais de obter uma entidade de serviço:
Usar uma identidade gerenciada (recomendado): O Azure cria e gerencia a entidade de serviço para você. O aplicativo pode acessar com segurança outros serviços do Azure sem armazenar credenciais. Funciona com serviços como Serviço de Aplicativo, Azure Functions e Máquinas Virtuais.
Registre o aplicativo manualmente: registre o aplicativo na ID do Microsoft Entra. Isso cria uma entidade de serviço e um objeto de aplicativo que identifica o aplicativo em todos os locatários.
Nota
É recomendável usar uma identidade gerenciada atribuída pelo sistema.
Autenticação no Key Vault no código do aplicativo
O SDK do Key Vault está usando a biblioteca cliente do Azure Identity, que permite a autenticação integrada ao Key Vault em diversos ambientes com o mesmo código. A tabela a seguir fornece informações sobre as bibliotecas de clientes da Identidade do Azure:
| .NET | Python | Java | JavaScript |
|---|---|---|---|
| SDK .NET do Azure Identity | SDK de Identidade do Azure Python | SDK Java do Azure Identity | SDK JavaScript do Azure Identity |
Autenticação no Key Vault com REST
Os tokens de acesso devem ser enviados ao serviço usando o cabeçalho de Autorização HTTP:
PUT /keys/MYKEY?api-version=<api_version> HTTP/1.1
Authorization: Bearer <access_token>
Quando um token de acesso não é fornecido ou quando o serviço rejeita um token, um HTTP 401 erro é retornado ao cliente e inclui o WWW-Authenticate cabeçalho, por exemplo:
401 Not Authorized
WWW-Authenticate: Bearer authorization="…", resource="…"
Os parâmetros no cabeçalho WWW-Authenticate são:
autorização: o endereço do serviço de autorização OAuth2 que pode ser usado para obter um token de acesso para a solicitação.
recurso: o nome do recurso (
https://vault.azure.net) a ser usado na solicitação de autorização.