S’authentifier auprès d’Azure Key Vault
L’authentification avec Key Vault fonctionne avec l’ID Microsoft Entra, qui est responsable de l’authentification de l’identité d’un principal de sécurité donné.
Pour les applications, il y a deux méthodes pour obtenir un principal de service :
Activez une identité managée attribuée par le système pour l'application. Avec l’identité managée, Azure gère en interne le principal de service de l’application et authentifie automatiquement l’application avec d’autres services Azure. L’identité managée est disponible pour les applications déployées sur différents services.
Si vous ne pouvez pas utiliser l’identité managée, vous inscrivez plutôt l’application auprès de votre locataire Microsoft Entra. L’inscription crée également un deuxième objet d’application qui identifie l’application sur tous les locataires.
Note
Il est recommandé d’utiliser une identité managée affectée par le système.
Voici des informations sur l’authentification auprès de Key Vault sans utiliser d’identité managée.
Authentification auprès de Key Vault dans le code d’application
Le Kit de développement logiciel (SDK) Key Vault utilise la bibliothèque de client Azure Identity, qui permet une authentification transparente auprès de Key Vault dans les environnements avec le même code. Le tableau ci-dessous fournit des informations sur les bibliothèques clientes Azure Identity :
Authentification auprès de Key Vault avec REST
Les jetons d’accès doivent être envoyés au service à l’aide de l’en-tête d’autorisation HTTP :
PUT /keys/MYKEY?api-version=<api_version> HTTP/1.1
Authorization: Bearer <access_token>
Lorsqu’un jeton d’accès n’est pas fourni ou lorsqu’un jeton n’est pas accepté par le service, une erreur HTTP 401
est retournée au client et inclut l’en-tête WWW-Authenticate
, par exemple :
401 Not Authorized
WWW-Authenticate: Bearer authorization="…", resource="…"
Les paramètres de l’en-tête WWW-Authenticate
sont les suivants :
autorisation : adresse du service d’autorisation OAuth2 qui peut être utilisée pour obtenir un jeton d’accès pour la demande.
ressource : nom de la ressource (
https://vault.azure.net
) à utiliser dans la demande d’autorisation.