Skip to main content

Gestion de vos jetons d’accès personnels

Vous pouvez utiliser personal access token à la place d’un mot de passe lors de l’authentification à GitHub dans la ligne de commande ou avec l’API.

Avertissement

Considérez vos jetons d’accès comme des mots de passe. Pour plus d’informations, consultez Garder vos personal access token sécurisés.

À propos des personal access token

Les Personal access token représentent une alternative à l’utilisation de mots de passe pour l’authentification auprès de GitHub durant l’utilisation de l’API GitHub ou de la ligne de commande.

Les Personal access token permettent l’accès aux ressources GitHub en votre nom. Pour permettre l’accès aux ressources au nom d’une organisation ou dans le cadre d’intégrations de longue durée, vous devez utiliser une GitHub App. Pour plus d’informations, consultez « À propos de la création d’applications GitHub ».

Un jeton possède les mêmes capacités d’accès aux ressources et d’exécution d’actions sur ces ressources que le propriétaire du jeton, et est en outre limité par toute portée ou autorisation accordée au jeton. Un jeton ne peut pas accorder des fonctionnalités d’accès supplémentaires à un utilisateur. Par exemple, un personal access token peut être configuré avec une étendue admin:org, mais si le propriétaire du jeton n’est pas propriétaire de l’organisation, le jeton ne donnera pas accès aux droits d’administration de l’organisation.

Types de personal access token

GitHub prend en charge deux types de personal access token : les fine-grained personal access token et les personal access tokens (classic). GitHub vous recommande d’utiliser des fine-grained personal access token à la place de personal access tokens (classic) autant que possible.

Remarque

Bien que plus sécurisé et contrôlable, Fine-grained personal access token ne peut pas accomplir toutes les tâches qu’un personal access token (classic) est capable de réaliser. Consultez la section sur les limitations de Fine-grained personal access tokens ci-dessous pour en savoir plus.

Les variables fine-grained personal access token et personal access tokens (classic) sont associées à l’utilisateur qui les a générées et deviendront inactives si l’utilisateur perd l’accès à la ressource.

Les propriétaires d’organisation peuvent définir une politique visant à restreindre l’accès à personal access tokens (classic) à leur organisation , et les propriétaires d’entreprise peuvent restreindre l’accès à personal access tokens (classic) à l’entreprise ou aux organisations appartenant à l’entreprise . Pour plus d’informations, consultez « Définition d’une stratégie de jeton d’accès personnel pour votre organisation ».

Fine-grained personal access token

Les Fine-grained personal access tokens présentent plusieurs avantages en matière de sécurité par rapport aux personal access tokens (classic), mais ils comportent également des limitations qui peuvent empêcher leur utilisation dans tous les cas de figure. Ces limites, ainsi que nos projets pour y remédier, sont présentés dans la section ci-dessous.

Si vous pouvez utiliser fine-grained personal access token dans votre scénario, vous bénéficierez des améliorations suivantes :

  • Chaque jeton est limité à l’accès aux ressources appartenant à un seul utilisateur ou à une seule organisation.
  • Chaque jeton peut être limité à l’accès à des référentiels spécifiques pour cet utilisateur ou cette organisation.
  • Chaque jeton se voit attribuer des autorisations spécifiques et précises, qui offrent un contrôle plus important que les champs d’application accordés à personal access tokens (classic).
  • Les propriétaires d’organisation peuvent imposer une approbation à tous les fine-grained personal access token ayant accès aux ressources de l’organisation.
  • Les propriétaires d’entreprise peuvent imposer une approbation pour tous les fine-grained personal access token ayant accès aux ressources dans les organisations appartenant à l’entreprise.
Limites de Fine-grained personal access tokens

Fine-grained personal access tokens ne prend pas en charge toutes les fonctionnalités de personal access tokens (classic). Ces lacunes ne sont pas permanentes : GitHub s’efforce de les combler. Consultez notre feuille de route publique pour obtenir plus de détails sur la date à laquelle ces scénarios seront pris en charge.

Les principales lacunes dans fine-grained personal access token sont les suivantes :

  • Utilisation de fine-grained personal access token pour contribuer à des dépôts publics dont l’utilisateur n’est pas membre.
  • Utilisation de fine-grained personal access token pour contribuer à des référentiels dans lesquels l’utilisateur est un collaborateur externe ou un collaborateur du référentiel.
  • Utilisation de fine-grained personal access token pour accéder simultanément à plusieurs organisations.
  • Utilisation de fine-grained personal access token pour accéder aux ressources internal au sein de l’entreprise à laquelle appartient l’utilisateur.
  • Utilisation de fine-grained personal access token pour appeler les API qui gèrent le compte Entreprise.
  • Utilisation de fine-grained personal access token pour accéder aux packages.
  • Utilisation de fine-grained personal access token pour appeler l’API Checks.
  • Utilisation de fine-grained personal access token pour accéder aux projets associés à un compte utilisateur.

Toutes ces lacunes seront comblées au fil du temps, car GitHub continue d’investir dans des modèles d’accès plus sécurisés.

Personal access tokens (classic)

Les Personal access tokens (classic) sont moins sécurisés. Cependant, certaines fonctionnalités sont utilisables uniquement avec les personal access tokens (classic) :

  • Seuls les personal access tokens (classic) disposent d’un accès en écriture pour les dépôts publics qui ne vous appartiennent pas, ou qui appartiennent à une organisation dont vous n’êtes pas membre.
  • Seuls les personal access tokens (classic) disposent automatiquement d’un accès en écriture pour les dépôts internes qui appartiennent à votre entreprise. Les Fine-grained personal access token doivent disposer d’un accès aux dépôts internes.
  • Les collaborateurs externes peuvent utiliser uniquement les personal access tokens (classic) pour accéder aux dépôts d’organisation dont ils sont collaborateurs.
  • Seuls les personal access tokens (classic) peuvent accéder aux entreprises. (Un Fine-grained personal access token peut accéder aux organisations appartenant aux entreprises).
  • Seuls quelques points de terminaison d’API REST sont disponibles uniquement avec personal access tokens (classic). Pour vérifier si un point de terminaison prend également en charge les jetons de type fine-grained personal access token, consultez la documentation de ce point de terminaison ou consultez Points de terminaison disponibles pour les jetons d’accès personnels affinés.

Si vous choisissez d’utiliser un personal access token (classic), n’oubliez pas qu’il accorde l’accès à tous les dépôts au sein des organisations auxquelles vous avez accès, ainsi qu’à tous les dépôts personnels dans votre compte personnel.

Garder vos personal access token sécurisés

Les Personal access token sont comme des mots de passe qui partagent les mêmes risques de sécurité inhérents. Avant de créer un personal access token, déterminez s’il existe une méthode d’authentification plus sécurisée à votre disposition :

Si ces options ne sont pas disponibles et que vous devez créer un personal access token, envisagez d’utiliser un autre service CLI pour stocker votre jeton en toute sécurité.

Quand vous utilisez un personal access token dans un script, vous pouvez stocker votre jeton en tant que secret et exécuter votre script via GitHub Actions. Pour plus d’informations, consultez Utilisation de secrets dans GitHub Actions. Vous pouvez également stocker votre jeton en tant que secret Codespaces et exécuter votre script dans Codespaces. Pour plus d’informations, consultez « Gestion des secrets spécifiques à votre compte pour GitHub Codespaces ».

Pour plus d’informations sur les bonnes pratiques, consultez Sécuriser les informations d’identification de l’API.

Création d’un fine-grained personal access token

Remarque

Vous pouvez créer jusqu’à 50 fine-grained personal access tokens. Si vous avez besoin de plus de jetons ou si vous développez des automatisations, envisagez d’utiliser GitHub App pour une meilleure évolutivité et une gestion plus efficace. Pour plus d’informations, consultez « Décider quand créer une application GitHub ».

  1.        [Vérifiez votre adresse e-mail](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/verifying-your-email-address), si elle n’a pas encore été vérifiée. 1. Dans le coin supérieur droit de n’importe quelle page sur GitHub, cliquez sur votre photo de profil, puis sur **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-gear" aria-label="gear" role="img"><path d="M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z"></path></svg> Paramètres**.
    
  2. Dans la barre latérale gauche, cliquez sur Paramètres de développeur.

  3. Dans la barre latérale gauche, sous Personal access tokens , cliquez sur Jetons affinés.

  4. Cliquez sur Générer un nouveau jeton.

  5. Sous Nom du jeton, entrez un nom pour le jeton.

  6. Sous Expiration, sélectionnez une date d’expiration pour le jeton. Les durées de vie illimitées sont autorisées, mais peuvent être bloquées par une politique de durée de vie maximale définie par votre organisation ou le propriétaire de l’entreprise. Pour plus d’informations, consultez Application d’une politique de durée de vie maximale pour personal access tokens.

  7. Le cas échéant, sous Description, ajoutez une note pour décrire la finalité du jeton.

  8. Sous Propriétaire de ressource, sélectionnez un propriétaire de ressource. Le jeton peut uniquement accéder aux ressources appartenant au propriétaire de ressource sélectionné. Les organisations dont vous êtes membre n’apparaîtront pas si l’organisation a bloqué l’utilisation des fine-grained personal access tokens. Pour plus d’informations, consultez Définition d’une stratégie de jeton d’accès personnel pour votre organisation. Vous devrez peut-être effectuer une authentification unique (SSO) si l’organisation sélectionnée l’exige et que vous n’avez pas encore de session active.

  9. Le cas échéant, si le propriétaire de ressource est une organisation qui impose une approbation pour les fine-grained personal access token, dans la zone située sous le propriétaire de ressource, entrez une justification de la demande.

  10. Sous Accès au dépôt, sélectionnez les dépôts auxquels vous souhaitez que le jeton accède. Vous devez choisir l’accès minimal au dépôt répondant à vos besoins. Les jetons incluent toujours un accès en lecture seule à tous les référentiels publics sur GitHub.

  11. Si vous avez sélectionné Sélectionner uniquement les dépôts à l’étape précédente, sous la liste déroulante Dépôts sélectionnés, sélectionnez les dépôts auxquels vous souhaitez que le jeton accède.

  12. Sous Autorisations, sélectionnez les autorisations à octroyer au jeton. Selon les informations que vous avez spécifiées pour le propriétaire de la ressource et l’accès au dépôt, il existe des autorisations relatives au dépôt, à l’organisation et au compte. Vous devez choisir les autorisations minimales nécessaires à vos besoins.

    Le document de référence de l’API REST pour chaque point de terminaison indique si le point de terminaison est compatible avec fine-grained personal access tokens et précise les autorisations requises pour que le jeton puisse utiliser le point de terminaison. Certains points de terminaison peuvent nécessiter plusieurs autorisations, et certains points de terminaison peuvent nécessiter une autorisation parmi des autorisations multiples. Pour obtenir une vue d’ensemble des points de terminaison de l’API REST auxquels un fine-grained personal access token peut accéder à chaque autorisation, consultez Autorisations nécessaires pour les jetons d’accès personnels affinés.

  13. Cliquez sur Générer un jeton.

Si vous avez sélectionné une organisation en tant que propriétaire de ressource et si cette organisation impose une approbation pour les fine-grained personal access token, votre jeton est marqué comme étant pending jusqu’à ce qu’il soit examiné par un administrateur d’organisation. Votre jeton ne peut pas lire les ressources publiques tant qu’il n’a pas été approuvé. Si vous êtes propriétaire de l’organisation, votre demande est automatiquement approuvée. Pour plus d’informations, consultez « Examen et révocation des jetons d’accès personnels dans votre organisation ».

Préremplissage des détails fine-grained personal access token à l’aide des paramètres URL

Vous pouvez partager des modèles pour un fine-grained personal access token via des liens. Le stockage des informations relatives aux jetons de cette manière facilite l’automatisation des flux de travail et améliore l’expérience des développeurs en orientant les utilisateurs vers la création de jetons avec les champs pertinents déjà remplis.

Chaque champ pris en charge peut être défini à l’aide d’un paramètre de requête spécifique. Tous les paramètres sont facultatifs et validés par le formulaire de génération de jetons afin de garantir que les combinaisons d’autorisations et de propriétaires de ressources sont cohérentes.

Un exemple de modèle d’URL est présenté ci-dessous, avec des sauts de ligne pour plus de lisibilité :

HTTP
https://github.com/settings/personal-access-tokens/new
  ?name=Repo-reading+token
  &description=Just+contents:read
  &target_name=octodemo
  &expires_in=45
  &contents=read

Essayez l’URL pour créer un jeton avec contents:read et metadata:read, avec le nom et la description indiqués et une date d’expiration fixée à 45 jours dans le futur. Un message d’erreur indiquant Cannot find the specified resource owner: octodemo s’affichera, car vous n’êtes pas membre de l’organisation octodemo.

Vous trouverez ci-dessous quelques exemples d’URL qui génèrent les jetons que nous observons le plus fréquemment :

  •         [Lire le contenu du référentiel](https://github.com/settings/personal-access-tokens/new?name=Repo-reading+token&description=Just+contents:read&contents=read)
    
  •         [Accès push aux référentiels](https://github.com/settings/personal-access-tokens/new?name=Repo-writing+token&description=Just+contents:write&contents=write)
    
  • Accès aux modèles GitHub
  •         [Mettre à jour le code et ouvrez une PR](https://github.com/settings/personal-access-tokens/new?name=Core-loop+token&description=Write%20code%20and%20push%20it%20to%20main%21%20Includes%20permission%20to%20edit%20workflow%20files%20for%20Actions%20-%20remove%20%60workflows%3Awrite%60%20if%20you%20don%27t%20need%20to%20do%20that&contents=write&pull_requests=write&workflows=write)
    
  •         [Gérer les licences Copilot dans une organisation](https://github.com/settings/personal-access-tokens/new?name=Core-loop+token&description=Enable%20or%20disable%20copilot%20access%20for%20users%20with%20the%20Seat%20Management%20APIs%3A%20https%3A%2F%2Fdocs.github.com%2Frest%2Fcopilot%2Fcopilot-user-management%0ABe%20sure%20to%20select%20an%20organization%20for%20your%20resource%20owner%20below%21&organization_copilot_seat_management=write)<!-- markdownlint-disable-line search-replace Custom rule -->
    
  •         [Faire des requêtes Copilot](https://github.com/settings/personal-access-tokens/new?name=Copilot+requests+token&description=Make%20Copilot%20API%20requests%20on%20behalf%20of%20the%20user%2C%20consuming%20premium%20requests%3A%20https%3A%2F%2Fdocs.github.com%2Fcopilot%2Fconcepts%2Fbilling%2Fcopilot-requests&user_copilot_requests=read)<!-- markdownlint-disable-line search-replace Custom rule -->
    

Paramètres de requête pris en charge

Pour créer votre propre modèle de jeton, suivez les détails des paramètres de requête fournis dans ce tableau :

ParamètreTypeExemple de valeurValeurs validesDescription
namestringDeploy%20Bot≤ 40 caractères, encodés en URLPréremplit le nom d’affichage du jeton.
descriptionstringUsed+for+deployments≤ 1 024 caractères, encodés en URLPréremplit la description du jeton.
target_namestringoctodemoIdentifiant de l’utilisateur ou de l’organisationDéfinit la cible de ressource du jeton. Il s’agit du propriétaire des référentiels auxquels le jeton pourra accéder. Si ce paramètre n’est pas fourni, le compte utilisateur actuel est utilisé par défaut.
expires_inentier
          `30` ou `none` | Nombre entier compris entre 1 et 366, ou `none` | Jours avant l’expiration ou `none` pour les produits sans date d’expiration. Si cette information n’est pas fournie, la valeur par défaut est de 30 jours, ou moins si la cible dispose d’une politique de durée de vie des jetons. |

| <permission> | string | contents=read | Une série de niveaux d’autorisation et d’accès. | Les autorisations que le jeton devrait posséder. Les autorisations peuvent être définies sur read, write ou admin, mais toutes les autorisations ne prennent pas en charge chacun de ces niveaux. |

Autorisations

Chaque autorisation prise en charge est définie à l’aide de son nom comme paramètre de requête, la valeur spécifiant le niveau d’accès souhaité. Les niveaux d’accès valides sont read, write et admin. Certaines autorisations ne prennent en charge que read, d’autres uniquement write, et seules quelques-unes prennent en charge admin. Utilisez autant d’autorisations que nécessaire, sous la forme &contents=read&pull_requests=write&....

Il n’est pas nécessaire d’inclure à la fois read et write pour une autorisation dans votre URL : write inclut toujours read, et admin inclut toujours write.

Autorisations du compte

Les autorisations de compte ne sont utilisées que lorsque l’utilisateur actuel est défini comme propriétaire de la ressource.

Nom du paramètreNom completNiveaux d’accès
blockingBloquer un autre utilisateur
          `read`, `write` |

| codespaces_user_secrets | Secrets utilisateur Codespaces | read, write | | copilot_messages | Discussion avec Copilot | read | | copilot_editor_context | contexte d'édition de Copilot | read | | copilot_requests | demandes de Copilot | write | | emails | Adresses e-mail | read, write | | user_events | Événements | read | | followers | Adeptes | read, write | | gpg_keys | Clés GPG | read, write | | gists | Gists | write | | keys | Clés SSH Git | read, write | | interaction_limits | Limites d’interaction | read, write | | knowledge_bases | Bases de connaissances | read, write | | user_models | Modèles | read | | plan | Plan | read | | private_repository_invitations | Invitations à un référentiel privé | read | | profile | Profil | write | | git_signing_ssh_public_keys | Clés de signature SSH | read, write | | starring | Attribution d’étoiles | read, write | | watching | Visionnage | read, write |

Remarque

L’autorisation copilot_requests permet de faire des demandes Copilot pour l’utilisateur spécifié, qui comptent dans l’allocation de demandes Premium de l’utilisateur ou sont facturées en dépassement si cette allocation est dépassée. Pour plus d’informations sur les demandes et la facturation de Copilot, consultez Demandes dans GitHub Copilot.

Autorisations des référentiels

Les autorisations de référentiel s’appliquent à la fois aux utilisateurs et aux propriétaires de ressources d’organisation.

Nom du paramètreNom completNiveaux d’accès
actionsActions
          `read`, `write` |

| administration | Administration | read, write | | | | artifact_metadata | Métadonnées d’artefact | read, write | | | | attestations | Attestations | read, write | | security_events | Alertes d’analyse du code | read, write | | codespaces | Codespaces | read, write | | codespaces_lifecycle_admin | Administrateur de cycle de vie de codespaces | read, write | | codespaces_metadata | Métadonnées de codespaces | read | | codespaces_secrets | Secrets de codespaces | write | | statuses | États de validation | read, write | | contents | Contenus | read, write | | repository_custom_properties | Propriétés personnalisées | read, write | | vulnerability_alerts | Alertes Dependabot | read, write | | dependabot_secrets | Secrets Dependabot | read, write | | deployments | Déploiements | read, write | | discussions | Discussions | read, write | | environments | Environnements | read, write | | issues | Problèmes | read, write | | merge_queues | Fusionner les files d’attente | read, write | | metadata | Métadonnées | read | | pages | Pages | read, write | | pull_requests | Demandes de tirage | read, write | | repository_advisories | Avis de sécurité des dépôts | read, write | | secret_scanning_alerts | Alertes d’analyse de secrets | read, write | | secrets | Secrets | read, write | | actions_variables | Variables | read, write | | repository_hooks | Webhooks | read, write | | workflows | Workflows | write |

Autorisations des organisations

Les autorisations d’organisation ne peuvent être utilisées que si le propriétaire de la ressource est une organisation.

Nom du paramètreNom completNiveaux d’accès
organization_api_insightsInformations sur les APIread
organization_administrationAdministration
          `read`, `write` |

| organization_user_blocking | Blocage d’utilisateurs | read, write | | organization_campaigns | Campagnes | read, write | | organization_custom_org_roles | Rôles d’organisation personnalisés | read, write | | organization_custom_properties | Propriétés du référentiel personnalisé | read write admin | | organization_custom_roles | Rôles de dépôts personnalisés | read, write | | organization_events | Événements | read | | organization_copilot_seat_management | GitHub Copilot Business | read, write | | issue_types | Types de problème | read, write | | organization_knowledge_bases | Bases de connaissances | read, write | | members | Membres | read, write | | organization_models | Modèles | read | | organization_network_configurations | Configurations réseau | read, write | | organization_announcement_banners | Bannières d’annonce de l’organisation | read, write | | organization_codespaces | Codespaces de l’organisation | read, write | | organization_codespaces_secrets | Secrets des codespaces de l’organisation | read, write | | organization_codespaces_settings | Paramètres des codespaces de l’organisation | read, write | | organization_dependabot_secrets | Secrets Dependabot de l’organisation | read, write | | organization_code_scanning_dismissal_requests | Demandes de rejet par analyse de code | read, write | | organization_private_registries | Registres privés | read, write | | organization_plan | Plan | read | | organization_projects | Projets | read write admin | | organization_secrets | Secrets | read, write | | organization_self_hosted_runners | Exécuteurs auto-hébergés | read, write | | team_discussions | Discussions d’équipe | read, write | | organization_actions_variables | Variables | read, write | | organization_hooks | Webhooks | read, write |

Création d’un personal access token (classic)

Remarque

Les propriétaires d’organisation peuvent restreindre l’accès des personal access token (classic) à leur organisation. Si vous essayez d’utiliser un personal access token (classic) pour accéder aux ressources d’une organisation qui a désactivé l’accès des personal access token (classic), votre requête échouera en indiquant la réponse 403. À la place, vous devez utiliser une GitHub App, une OAuth app ou un fine-grained personal access token.

Avertissement

Votre personal access token (classic) peut accéder à tous les dépôts auxquels vous avez accès. GitHub vous recommande d’utiliser à la place des fine-grained personal access token, que vous pouvez restreindre à des dépôts spécifiques. Les Fine-grained personal access token vous permettent également de spécifier des autorisations précises à la place de larges étendues.

  1.        [Vérifiez votre adresse e-mail](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/verifying-your-email-address), si elle n’a pas encore été vérifiée. 1. Dans le coin supérieur droit de n’importe quelle page sur GitHub, cliquez sur votre photo de profil, puis sur **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-gear" aria-label="gear" role="img"><path d="M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z"></path></svg> Paramètres**.
    
  2. Dans la barre latérale gauche, cliquez sur Paramètres de développeur.

  3. Dans la barre latérale gauche, sous Personal access tokens , cliquez sur Jetons (classiques).

  4. Sélectionnez Générer un nouveau jeton, puis cliquez sur Générer un nouveau jeton (classique).

  5. Dans le champ « Note », donnez un nom descriptif à votre jeton.

  6. Pour donner une expiration à votre jeton, sélectionnez Expiration, puis choisissez une option par défaut ou cliquez sur Personnalisé pour entrer une date.

  7. Sélectionnez les étendues à octroyer à ce jeton. Pour utiliser votre jeton afin d’accéder aux dépôts à partir de la ligne de commande, sélectionnez dépôt. Un jeton sans étendues attribuées peut accéder aux informations publiques uniquement. Pour plus d’informations, consultez « Étendues des applications OAuth ».

  8. Cliquez sur Générer un jeton.

  9. Si vous le souhaitez, pour copier le nouveau jeton dans le Presse-papiers, cliquez sur .

    Capture d’écran de la page « Personal access tokens ». À côté d’un jeton flouté, une icône de deux carrés qui se chevauchent est encadrée en orange.

  10. Pour utiliser votre jeton afin d’accéder aux ressources appartenant à une organisation qui utilise l’authentification unique SAML, autorisez ce jeton. Pour plus d’informations, consultez Autorisation d’un jeton d’accès personnel à utiliser avec l’authentification unique.

Suppression d’un personal access token

Supprimez personal access token s’il n’est plus nécessaire. Si vous supprimez une variable personal access token qui a été utilisée pour créer une clé de déploiement, cette dernière sera également supprimée.

  1. Dans le coin supérieur droit de n’importe quelle page sur GitHub, cliquez sur votre photo de profil, puis sur Paramètres.
  2. Dans la barre latérale gauche, cliquez sur Paramètres de développeur.
  3. Dans la barre latérale gauche, sous Personal access tokens, cliquez sur l’un ou l’autre des options Jetons à granularité fine ou Jetons (classiques), en fonction du type de personal access token que vous souhaitez supprimer.
  4. À droite du personal access token que vous souhaitez supprimer, cliquez sur Supprimer.

Remarque

Si vous identifiez une fuite de personal access token appartenant à une autre personne, vous pouvez soumettre une demande de révocation via l’API REST. Consultez « Bonnes pratiques pour empêcher les fuites de données dans votre organisation ».

Utilisation d’un personal access token sur la ligne de commande

Une fois que vous avez un personal access token, vous pouvez l’entrer à la place de votre mot de passe quand vous effectuez des opérations Git sur HTTPS.

Par exemple, pour cloner un dépôt sur la ligne de commande, vous devez entrer la commande suivante git clone. Vous êtes alors invité à entrer votre nom d’utilisateur et votre mot de passe. Quand vous êtes invité à entrer votre mot de passe, entrez votre personal access token au lieu d’un mot de passe.

$ git clone https://github.com/USERNAME/REPO.git
Username: YOUR-USERNAME
Password: YOUR-PERSONAL-ACCESS-TOKEN

Bien que vous soyez tenu de saisir votre nom d’utilisateur avec vos personal access token, le nom d’utilisateur n’est pas utilisé pour vous authentifier. Au lieu de cela, la variable personal access token est utilisée pour vous authentifier. Si vous n’entrez pas de nom d’utilisateur, vous recevrez un message d’erreur indiquant que vos identifiants ne sont pas valides.

Les Personal access token peuvent uniquement être utilisés pour les opérations Git HTTPS. Si votre dépôt utilise une URL distante SSH, vous devez faire passer le dépôt distant de SSH à HTTPS.

Si vous n’êtes pas invité à entrer votre nom d’utilisateur et votre mot de passe, il se peut que vos informations d’identification soient en cache sur votre ordinateur. Vous pouvez mettre à jour vos informations d’identification dans le trousseau pour remplacer votre ancien mot de passe par le jeton.

Au lieu d’entrer manuellement votre personal access token pour chaque opération Git HTTPS, vous pouvez mettre en cache votre personal access token avec un client Git. Git stocke temporairement vos informations d’identification en mémoire jusqu’à ce qu’un intervalle d’expiration soit écoulé. Vous pouvez également stocker le jeton dans un fichier texte brut que Git peut lire avant chaque requête. Pour plus d’informations, consultez « Mise en cache de vos informations d’identification GitHub dans Git ».

Pour aller plus loin

  •         [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/about-authentication-to-github)
    
  •         [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation)