Utiliser Git Credential Manager pour s’authentifier auprès d’Azure Repos
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Visual Studio 2019 | Visual Studio 2022
Git Credential Manager simplifie l’authentification avec vos référentiels Git Azure Repos. Les gestionnaires d’informations d’identification vous permettent d’utiliser les mêmes informations d’identification que celles que vous utilisez pour le portail web Azure DevOps Services. Les gestionnaires d’informations d’identification prennent en charge l’authentification multifacteur via le compte Microsoft ou l’ID Microsoft Entra. En plus de prendre en charge l’authentification multifacteur avec Azure Repos, les gestionnaires d’informations d’identification gèrent également l’authentification à 2 facteurs avec les référentiels GitHub.
Azure Repos fournit la prise en charge de l’IDE pour le compte Microsoft et l’authentification Microsoft Entra via les clients suivants :
- Team Explorer dans Visual Studio
- IntelliJ et Android Studio avec le plug-in Azure Repos pour IntelliJ
Si votre environnement n’a pas d’intégration disponible, configurez votre IDE avec un jeton d'accès personnel ou SSH pour vous connecter à vos dépôts.
Installer Git Credential Manager
Windows
Téléchargez et exécutez la dernière Git pour Windows Installer, qui inclut Git Credential Manager. Veillez à activer l’option d’installation du Gestionnaire d’informations d’identification Git.
macOS et Linux
Vous pouvez utiliser des clés SSH pour vous authentifier auprès d’Azure Repos, ou vous pouvez utiliser Git Credential Manager.
Les instructions d’installation sont incluses dans le référentiel GitHub pour GCM. Sur Mac, nous vous recommandons d’utiliser Homebrew. Sur Linux, vous pouvez installer à partir d’un fichier .deb ou d’un tarball.
Utilisation du Gestionnaire d’informations d’identification Git
Lorsque vous vous connectez à un référentiel Git à partir de votre client Git pour la première fois, le gestionnaire d’informations d’identification demande des informations d’identification. Fournissez vos identifiants Microsoft ou Microsoft Entra. Si l’authentification multifacteur est activée pour votre compte, le gestionnaire d’informations d’identification vous invite également à passer par ce processus.
Une fois authentifié, le gestionnaire d’informations d’identification crée et met en cache un jeton pour les futures connexions au dépôt. Les commandes Git qui se connectent à ce compte ne demanderont pas les informations d'identification de l'utilisateur jusqu'à ce que le jeton expire. Un jeton peut être révoqué via Azure Repos.
Définir le type d’informations d’identification par défaut en tant qu’OAuth
Par défaut, GCM demande un jeton d’accès personnel à partir d’Azure Repos. Toutefois, vous pouvez remplacer le type de jeton par défaut par un jeton Microsoft Entra pour l’authentification Git. Nous vous recommandons cette approche, car ce dernier jeton a une expiration d’une heure par rapport aux PAT de 7 jours frappés par GCM. Tous les PAT créés par GCM peuvent être révoqués dans la page Paramètres utilisateur.
Pour définir votre type d’informations d’identification par défaut sur les jetons Microsoft Entra, définissez l’entrée de configuration credential.azreposCredentialType
(ou GCM_AZREPOS_CREDENTIALTYPE
variable d’environnement) sur oauth
. En savoir plus sur avec GCM dans Azure Repos.
Utiliser l’authentification du principal de service
Vous pouvez également fournir un principal de service pour l’authentification avec GCM. Spécifiez les ID de client et de locataire d’un principal de service au format suivant : {tenantId}/{clientId}
.
git config --global credential.azreposServicePrincipal "11111111-1111-1111-1111-111111111111/22222222-2222-2222-2222-222222222222"
Vous devez également définir au moins un mécanisme d’authentification si vous définissez cette valeur :
- credential.azreposServicePrincipalSecret
- credential.azreposServicePrincipalCertificateThumbprint
- credential.azreposServicePrincipalCertificateSendX5C
Obtenir de l’aide
Vous pouvez ouvrir et signaler des problèmes avec Git Credential Manager sur le projet GitHub .