doc-locale/fr-fr/ci/secrets/azure_key_vault.md
{{< details >}}
{{< /details >}}
{{< history >}}
{{< /history >}}
Vous pouvez utiliser des secrets stockés dans Azure Key Vault dans vos pipelines CI/CD GitLab.
Prérequis :
AZURE_KEY_VAULT_SERVER_URL : L'URL de votre serveur Azure Key Vault, par exemple https://vault.example.com.AZURE_CLIENT_ID : L'ID client de l'application Azure.AZURE_TENANT_ID : L'ID de tenant de l'application Azure.Vous pouvez utiliser un secret stocké dans votre Azure Key Vault dans un job en le définissant avec le mot-clé azure_key_vault :
job:
id_tokens:
AZURE_JWT:
aud: 'https://gitlab.com'
secrets:
DATABASE_PASSWORD:
token: $AZURE_JWT
azure_key_vault:
name: 'DATABASE-PASSWORD'
version: '00000000000000000000000000000000'
Pour utiliser plusieurs secrets d'Azure Key Vault dans le même job, définissez chaque secret sous le mot-clé secrets :
job:
id_tokens:
AZURE_JWT:
aud: 'https://gitlab.com'
secrets:
REDIS_PASSWORD:
token: $AZURE_JWT
azure_key_vault:
name: 'REDIS-PASSWORD'
version: '00000000000000000000000000000000'
DATABASE_PASSWORD:
token: $AZURE_JWT
azure_key_vault:
name: 'DATABASE-PASSWORD'
version: '00000000000000000000000000000000'
Dans ces exemples :
aud est l'audience, qui doit correspondre à l'audience utilisée lors de la création des identifiants d'identité fédéréename est le nom du secret dans Azure Key Vault.version est la version du secret dans Azure Key Vault. La version est un GUID généré sans tirets, que vous pouvez trouver sur la page des secrets Azure Key Vault.DATABASE_PASSWORD ou REDIS_PASSWORD), de manière similaire aux variables CI/CD de type fichier.Consultez la page Dépannage OIDC pour Azure pour les problèmes généraux liés à la configuration d'OIDC avec Azure.
JWT token is invalid or malformed {#jwt-token-is-invalid-or-malformed-message}Vous pouvez recevoir cette erreur lors de la récupération de secrets depuis Azure Key Vault :
RESPONSE 400 Bad Request
AADSTS50027: JWT token is invalid or malformed.
Cela se produit en raison d'un problème connu dans GitLab Runner où le jeton JWT n'est pas analysé correctement. Pour résoudre ce problème, mettez à niveau vers GitLab Runner 16.6 ou une version ultérieure.
Caller is not authorized to perform action on resource {#caller-is-not-authorized-to-perform-action-on-resource-message}Vous pouvez recevoir cette erreur lors de la récupération de secrets depuis Azure Key Vault :
RESPONSE 403: 403 Forbidden
ERROR CODE: Forbidden
Caller is not authorized to perform action on resource.\r\nIf role assignments, deny assignments or role definitions were changed recently, please observe propagation time.
ForbiddenByRbac
Si votre Azure Key Vault utilise RBAC, vous devez ajouter l'attribution de rôle Key Vault Secrets User à votre application Azure AD.
Par exemple :
appId=$(az ad app list --display-name gitlab-oidc --query '[0].appId' -otsv)
az role assignment create --assignee $appId --role "Key Vault Secrets User" --scope /subscriptions/<subscription-id>
Vous pouvez trouver votre ID d'abonnement dans :
The secrets provider can not be found. Check your CI/CD variables and try again. {#the-secrets-provider-can-not-be-found-check-your-cicd-variables-and-try-again-message}Vous pouvez recevoir cette erreur lorsque vous tentez de démarrer un job configuré pour accéder à Azure Key Vault :
The secrets provider can not be found. Check your CI/CD variables and try again.
Le job ne peut pas être créé car une ou plusieurs des variables requises ne sont pas définies :
AZURE_KEY_VAULT_SERVER_URLAZURE_CLIENT_IDAZURE_TENANT_ID