Azure devops pat token
Utiliser des jetons d’accès personnels
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Un jeton d’accès personnel (PAT) sert de mot de passe alternatif pour l’authentification dans Azure DevOps. Cette PAT vous identifie et détermine votre accessibilité et l’étendue de votre accès. Par conséquent, traitez les PAT avec le même niveau de prudence que les mots de passe.
Lorsque vous utilisez des outils Microsoft, votre compte Microsoft (MSA) ou Microsoft Entra ID est une méthode reconnue et prise en charge. Si vous utilisez des outils non Microsoft qui ne prennent pas en charge les comptes Microsoft ou Microsoft Entra, ou si vous préférez ne pas partager vos informations d’identification principales avec ces outils, les PAT constituent une alternative appropriée.
Cet article vous guide tout au long de la création, de l’utilisation, de la modification et de la révocation des PAT pour Azure DevOps.
Vous pouvez gérer les PAT à l’aide des méthodes suivantes :
Pour établir des PAT pour des outils non Microsoft, vous pouvez utiliser des gestionnaires d’informations d’identification Git ou les générer manuellement. Nous vous recommandons de consulter nos conseils d’authentification pour choisir le mécanisme d’authentification approprié. Les PAT offrent une alternative simple pour les petits projets qui ne nécessitent pas de solution étendue. Sans gestionnaire d’informations d’identification, les utilisateurs saisissent leurs informations d’identification à chaque fois.
Prérequis
- Autorisations :
- Disposez de l’autorisation d’accéder à vos paramètres utilisateur et de les modifier dans lesquels les PAT sont gérés.
- Vérifier les autorisations : pour vérifier vos autorisations, effectuez l’un des processus suivants dans Azure DevOps :
- Accédez à votre profil et sélectionnez Paramètres utilisateur > Jetons d’accès personnels . Si vous pouvez voir et gérer vos PAT ici, vous disposez des Autorisations.
- Accédez à votre projet et sélectionnez Paramètres du projet > Autorisations . Recherchez votre compte utilisateur dans la liste et vérifiez les autorisations qui vous ont été attribuées. Recherchez les autorisations liées à la gestion des jetons ou des paramètres utilisateur.
- Vérifier les autorisations : pour vérifier vos autorisations, effectuez l’un des processus suivants dans Azure DevOps :
- Si votre organisation a mis en place des stratégies, un administrateur Azure DevOps devra peut-être vous accorder des autorisations spécifiques ou vous ajouter à une liste d’autorisation pour créer et gérer des PAT.
- En fonction des tâches que vous souhaitez effectuer avec le PAT, vous aurez peut-être besoin d’autorisations supplémentaires. Par exemple :
- Construire : Lire et exécuter du
- code : Lire, écrire et gérer
- Environnement : Lire et gérer
- Projet et équipe : Lire, écrire et gérer
- Groupes de variables : Lire et créer
- Disposez de l’autorisation d’accéder à vos paramètres utilisateur et de les modifier dans lesquels les PAT sont gérés.
- Niveaux d’accès : Disposez au moins d’un accès de base.
- Bonnes pratiques de sécurité : familiarisez-vous avec les bonnes pratiques de sécurité pour la gestion des PAT, comme ne les utiliser que lorsque cela est nécessaire et les faire pivoter régulièrement.
Créez une PAT
-
Connectez-vous à votre organisation ().
-
Sur votre page d’accueil, ouvrez les paramètres utilisateur et sélectionnez Jetons d’accès personnels .
-
Sélectionnez + Nouveau jeton .
-
Nommez votre jeton, sélectionnez l’organisation dans laquelle vous souhaitez l’utiliser, puis configurez-le pour qu’il expire automatiquement après un nombre défini de jours.
-
Sélectionnez les étendues de ce jeton à autoriser pour vos tâches spécifiques .
Par exemple, pour créer un jeton pour qu’un agent de build et de mise en production s’authentifie auprès d’Azure DevOps, définissez l’étendue du jeton sur Pools d’agents (lecture et gestion) . Pour lire les événements du journal d’audit et gérer ou supprimer des flux, sélectionnez Lire le journal d’audit , puis Créer .
Remarque Il
se peut que vous ne puissiez pas créer de PAT complets. Si c’est le cas, votre administrateur Azure DevOps dans Microsoft Entra ID a activé une stratégie qui vous limite à un ensemble spécifique d’étendues défini et personnalisé. Pour plus d’informations, consultez Gérer les PAT à l’aide de stratégies/Restreindre la création de PAT complets. Pour un PAT personnalisé, l’étendue requise pour accéder à l’API de gouvernance des composants, , n’est pas sélectionnable dans l’interface utilisateur.
-
Lorsque vous avez terminé, copiez le jeton et stockez-le dans un emplacement sécurisé. Pour votre sécurité, il ne s’affiche pas encore.
Utilisez votre PAT partout où vos informations d’identification utilisateur sont requises pour l’authentification dans Azure DevOps.
Important
- : Traitez un PAT avec la même prudence que votre mot de passe et gardez-le confidentiel.
- Connectez-vous avec votre nouveau PAT dans les 90 jours pour les organisations basées sur Microsoft Entra ID ; sinon, le PAT devient inactif. Pour plus d’informations, consultez Fréquence de connexion de l’utilisateur pour l’accès conditionnel.
Notifications
Pendant la durée de vie d’un PAT, les utilisateurs reçoivent deux notifications : la première au moment de sa création et la seconde sept jours avant son expiration.
Une fois que vous avez créé un PAT, vous recevez une notification similaire à l’exemple suivant. Cette notification sert à confirmer que votre PAT a été ajouté avec succès à votre organisation.
le L’image suivante montre un exemple de notification de sept jours avant l’expiration de votre PAT.
Si
vous recevez une notification PAT inattendue, cela peut signifier qu’un administrateur ou un outil a créé un PAT pour vous. En voici quelques exemples.
- Un jeton nommé « git : on YourMachine » est créé lorsque vous vous connectez à un dépôt Git Azure DevOps via git.exe.
- Un jeton nommé « Hooks de service : : Azure App Service : : Déployer l’application web » est créé lorsque vous ou un administrateur configurez un déploiement d’application web Azure App Service.
- Un jeton nommé « WebAppLoadTestCDIntToken » est créé lorsque le test de charge web est configuré dans le cadre d’un pipeline par vous ou un administrateur.
- Un jeton nommé « Intégration Microsoft Teams » est créé lorsqu’une extension de messagerie d’intégration Microsoft Teams est configurée.
Utilisez un PAT
que vous Le PAT sert d’identité numérique, un peu comme un mot de passe.
Les interactionsGit
Git nécessitent un nom d’utilisateur, qui peut être n’importe quoi sauf une chaîne vide. Pour utiliser un PAT avec l’authentification HTTP de base, procédez comme indiqué dans le bloc de code suivant.
Dans PowerShell, entrez le code suivant.
Utilisez des gestionnaires d’informations d’identification pour éviter de saisir vos informations d’identification à chaque fois et pour renforcer la sécurité de votre jeton :
Dans Bash, entrez le code suivant.
Pour renforcer la sécurité de votre jeton, utilisez des gestionnaires d’informations d’identification afin de ne pas avoir à saisir vos informations d’identification à chaque fois. Nous recommandons Git Credential Manager.
Supprimer
-
l’origine existante : si vous avez précédemment ajouté l’origine à l’aide d’un nom d’utilisateur, supprimez-la en exécutant la commande suivante :
-
S’authentifier à l’aide d’un PAT : si vous rencontrez des problèmes avec l’authentification standard, exécutez la commande suivante pour vous authentifier via la ligne de commande :
La fait référence à la structure du chemin d’URL utilisée dans Azure DevOps pour les dépôts Git. Le segment indique que vous accédez à un dépôt Git et que vous devez le remplacer par le nom réel de votre dépôt. Par exemple, si votre dépôt est nommé , le chemin d’accès sera ''.
-
Cloner le dépôt : si vous utilisez Git et que vous devez vous authentifier, exécutez la commande suivante :
Remplacez par le nom de votre organisation Azure DevOps et par le nom de votre dépôt.
Utiliser un PAT dans votre code
Vous pouvez utiliser un PAT dans votre code pour authentifier les demandes d’API et automatiser les flux de travail. Pour ce faire, incluez le PAT dans l’en-tête d’autorisation de vos requêtes HTTP.
Pour fournir le PAT via un en-tête HTTP, convertissez-le d’abord en chaîne. L’exemple suivant montre comment convertir en C#.
La chaîne résultante peut ensuite être fournie sous forme d’en-tête HTTP au format suivant.
L’exemple suivant utilise la classe HttpClient en C#.
Conseil
Lorsque vous utilisez des variables, ajoutez a au début de la chaîne, comme dans l’exemple suivant.
L’exemple suivant obtient la liste des builds utilisant curl.
Lorsque votre code fonctionne, c’est le bon moment pour passer de l’authentification de base à OAuth.
Pour plus d’informations et des exemples d’utilisation des PAT, consultez les articles suivants :
Modifier un PAT
Procédez comme suit pour :
- Régénérer un PAT pour créer un jeton, ce qui invalide le précédent.
- Prolonger un PAT pour augmenter sa durée de validité.
- Modifier l’étendue d’un PAT pour modifier ses autorisations.
-
À partir de votre page d’accueil, ouvrez vos paramètres utilisateur, puis sélectionnez Profil .
-
Sous Sécurité, sélectionnez Jetons d’accès personnels . Sélectionnez le jeton que vous souhaitez modifier, puis Editer .
-
Modifiez le nom du jeton, l’expiration du jeton ou l’étendue de l’accès associé au jeton, puis sélectionnez Enregistrer .
Révoquer un PAT
Vous pouvez révoquer un PAT à tout moment pour les raisons suivantes et d’autres :
- Révoquez un PAT si vous soupçonnez qu’il est compromis.
- Révoquer un PAT lorsqu’il n’est plus nécessaire.
- Révoquer une PAT pour appliquer des stratégies de sécurité ou exigences de conformité.
-
À partir de votre page d’accueil, ouvrez vos paramètres utilisateur, puis sélectionnez Profil .
-
Sous Sécurité, sélectionnez Jetons d’accès personnels . Sélectionnez le jeton pour lequel vous souhaitez révoquer l’accès, puis sélectionnez Révoquer .
-
Sélectionnez Révoquer dans la boîte de dialogue de confirmation.
Pour plus d’informations, consultez Révoquer les PAT utilisateur pour les administrateurs.
Modifications du format
À partir de juillet 2024, nous avons considérablement modifié le format des PAT émis par Azure DevOps. Ces modifications offrent davantage d’avantages en matière de sécurité et améliorent les outils de détection des secrets disponibles via nos offres partenaires, telles que GitHub Advanced Security pour Azure DevOps. Ce nouveau format PAT suit le format recommandé pour tous les produits Microsoft. L’inclusion de bits plus identifiables améliore le taux de détection des faux positifs de ces outils de détection secrète et nous permet d’atténuer plus rapidement les fuites détectées.
Principaux changements :
- Augmentation de la longueur des jetons : les nouveaux jetons comportent désormais 84 caractères, dont 52 caractères sont des données aléatoires. Cette longueur accrue améliore l’entropie globale, ce qui rend les jetons plus résistants aux attaques potentielles par force brute.
- Signature fixe : Les jetons émis par notre service comprennent une signature fixe aux positions 76-80.
Action requise :
- Régénérer les PAT existants : Nous vous recommandons vivement de régénérer tous les PAT actuellement utilisés pour tirer parti de ces améliorations de sécurité.
- intégrateur support : Les intégrateurs doivent mettre à jour leurs systèmes pour s’adapter à la fois aux longueurs de jetons nouvelles et existantes.
Important Les
deux formats restent valables dans un avenir prévisible, mais nous encourageons activement les clients à passer au nouveau format de 84 caractères . Au fur et à mesure que l’adoption du nouveau format augmente, nous envisageons de retirer l’ancien format de 52 caractères et tous les jetons émis dans ce style.
Q
: Pourquoi ne puis-je pas modifier ou régénérer un PAT étendu à une seule organisation ?
R : Assurez-vous d’être connecté à l’organisation dans laquelle votre PAT est défini. Vous pouvez afficher tous vos PAT tout en étant connecté à n’importe quelle organisation dans le même ID Microsoft Entra, mais vous ne pouvez modifier que les jetons délimités à l’organisation lorsque vous êtes connecté à l’organisation à laquelle ils sont concernés.
Q : Qu’advient-il d’un PAT si un compte utilisateur est désactivé ?
R : Lorsqu’un utilisateur est supprimé d’Azure DevOps, le PAT est invalidé au bout d'1 heure. Si votre organisation est connectée à Microsoft Entra ID, le PAT est également invalidé dans Microsoft Entra ID, car il appartient à l’utilisateur. Nous vous recommandons de basculer le PAT vers un autre utilisateur ou un autre compte de service pour maintenir l’exécution des services.
Q : Existe-t-il un moyen de renouveler un PAT via l’API REST ?
R : Oui, il existe un moyen de renouveler, de gérer et de créer des PAT à l’aide de nos API de gestion du cycle de vie des PAT. Pour plus d’informations, consultez Gérer les PAT à l’aide de l’API REST et FAQ.
Q : Puis-je utiliser l’authentification de base avec toutes les API REST Azure DevOps ?
R : Non. Vous pouvez utiliser l’authentification de base avec la plupart des API REST Azure DevOps, mais les organisations et les profils ne prennent en charge OAuth que par la traduction automatique. Pour plus d’informations, consultez Gérer les PAT à l’aide de REST API.
Q : Que se passe-t-il si j’archive accidentellement mon PAT dans un dépôt public sur GitHub ?
R : Azure DevOps recherche les PAT archivés dans des dépôts publics sur GitHub. Lorsque nous trouvons un jeton divulgué, nous envoyons immédiatement une notification par e-mail détaillée au propriétaire du jeton et enregistrons un événement dans le journal d’audit de votre organisation Azure DevOps. À moins que vous n’ayez désactivé la politique Révocation automatique des jetons d’accès personnels divulgués, nous révoquons immédiatement le PAT divulgué. Nous encourageons les utilisateurs concernés à atténuer le problème en révoquant le jeton ayant fuité et en le remplaçant par un nouveau jeton.
Pour plus d’informations, consultez Révoquer automatiquement les PAT divulgués.
Q : Puis-je utiliser un jeton d’accès personnel en tant qu’ApiKey pour publier des packages NuGet dans un flux Azure Artifacts à l’aide de la ligne de commande dotnet/nuget.exe ?
R : Non. Azure Artifacts ne prend pas en charge la transmission d’un jeton d’accès personnel en tant qu’ApiKey. Quand à l’aide d’un environnement de développement local, nous vous recommandons d’installer le fournisseur d’informations d’identification Azure Artifacts pour vous authentifier auprès d’Azure Artifacts. Pour plus d’informations, consultez les exemples suivants : dotnet, NuGet.exe. Si vous souhaitez publier vos packages à l’aide d’Azure Pipelines, utilisez la tâche d’authentification NuGet pour vous authentifier avec votre exemple de flux.
Q : Pourquoi mon PAT a-t-il cessé de fonctionner ?
R : L’authentification PAT nécessite que vous vous connectiez régulièrement à Azure DevOps à l’aide du flux d’authentification complet. La connexion une fois tous les 30 jours est suffisante pour de nombreux utilisateurs, mais vous devrez peut-être vous connecter plus fréquemment en fonction de votre configuration Microsoft Entra. Si votre PAT ne fonctionne plus, essayez d’abord de vous connecter à votre organisation et suivez l’invite d’authentification complète. Si votre PAT ne fonctionne toujours pas, vérifiez s’il a expiré.
Q : Comment puis-je créer des clés d’accès qui ne sont pas liées à une personne spécifique à des fins de déploiement ?
R : Dans Azure DevOps, vous pouvez créer des clés d’accès qui ne sont pas liées à une personne spécifique à l’aide des principaux de service ou de la gestion des identités. Pour plus d’informations, consultez Gérer les connexions de service, Utiliser les secrets Azure Key Vault dans Azure Pipelines.