Comment configurer des jetons d'accès personnels HTTPS pour l'authentification Github

0
216

En août 2021, Github a supprimé la prise en charge de l'utilisation du mot de passe de votre compte à partir de la ligne de commande Git. Vous pouvez toujours utiliser HTTPS, mais vous devrez configurer un jeton d'accès personnel à utiliser à la place de votre mot de passe.

Que sont les jetons d'accès personnels ?< /h2>

Github choisit toujours de recommander des points de terminaison HTTPS plus faciles à utiliser pour accéder aux dépôts, mais leur sécurité basée sur un mot de passe est un inconvénient majeur. C'est pourquoi, si vous avez récemment essayé de pousser ou d'extraire du code à l'aide du mot de passe de votre compte, vous avez peut-être reçu l'erreur suivante :

remote : la prise en charge de l'authentification par mot de passe a été supprimée le 13 août 2021. Veuillez utiliser un jeton d'accès personnel à la place.

La ligne de commande de Git est un peu trompeuse ici, car elle vous demande votre “mot de passe,” mais Git veut que vous utilisiez quelque chose appelé un jeton d'accès personnel (PAT). Cela fonctionne un peu comme un mot de passe secondaire, sauf qu'il est unique, plus sécurisé et peut recevoir des autorisations plus spécifiques qui vous permettent d'accorder l'accès à votre compte en toute sécurité.

Vous utilisez les PAT exactement comme les mots de passe au lieu de saisir le mot de passe de votre compte pour git, vous entrerez le PAT. Vous pouvez également choisir de mettre le jeton en cache pour toujours, afin de ne pas avoir à le saisir tout le temps. Ce jeton peut également être utilisé pour accéder à l'API Github, mais ce n'est pas nécessaire pour la plupart des utilisateurs.

Vous pouvez également passer à l'authentification basée sur SSH, qui fonctionne de manière assez similaire à jetons d'accès, sauf qu'ils sont liés à votre machine et ne sont transmis nulle part. Néanmoins, les PAT sont faciles à configurer et à utiliser, et ont des autorisations plus flexibles que les clés SSH.

CONNEXES : Comment passer d'un référentiel Github à l'authentification SSH

Créer un nouveau jeton d'accès personnel

La configuration d'un PAT vous oblige à en créer un nouveau à partir des paramètres de Github et à échanger vos référentiels locaux pour les utiliser. Rendez-vous dans les paramètres de votre compte personnel pour générer un nouveau jeton. Faites défiler jusqu'à “Paramètres du développeur.” Sélectionnez “Jetons d'accès personnels,” et en générer un nouveau :

Publicité

Vous devrez vérifier le mot de passe de votre compte. Donnez un nom au jeton et sélectionnez une date d'expiration. Vous souhaiterez probablement modifier la valeur par défaut de 30 jours, bien que Github affiche un avertissement si vous sélectionnez “Pas d'expiration.” Ce n'est pas terrible d'avoir un jeton permanent, mais vous devriez probablement changer les mots de passe et les jetons au moins tous les 6 mois.

Enfin, vous pouvez choisir les étendues de ce jeton. Cela vous permet d'autoriser ou d'interdire certaines actions. Si vous souhaitez simplement utiliser git à partir de la ligne de commande avec vos référentiels, vous ne vous souciez probablement que du “repo” scope, qui permet de contrôler vos référentiels.

Vous obtiendrez un jeton comme ce qui suit, qui peut être utilisé à la place de votre mot de passe :

ghp_cgq4ZrHmFu0lLPl7ajKAwgMPnT5zhF00000

Passage aux jetons d'accès personnels

Si le mot de passe de votre compte n'est pas mis en cache, vous pouvez simplement saisir le nouveau jeton, et il devrait marcher. Si votre cache est obsolète, vous devrez le réinitialiser.

Sous Windows, si vous utilisez Git natif (pas via WSL), vous devrez ouvrir “< strong>Gérer les informations d'identification Windows” depuis le Panneau de configuration ou le menu Démarrer, et modifiez ou ajoutez le mot de passe à git :https://github.com.

Publicité

Sur macOS, il est accessible via l'application Keychain Access. Recherchez “github.com,” trouvez le “mot de passe Internet” pour votre compte Git et modifiez la clé.

Pour Linux ou WSL, vous devrez désactiver le cache, soit localement (pour un seul dépôt), soit globalement :

git config –local –unset credential.helper git config –global –unset credential.helper

Ensuite, vous pouvez pousser ou extraire de votre référentiel normalement, et il vous fera entrer le nouveau PAT s'il&#8217 ; n'est pas encore mis en cache. Vous pouvez mettre ce jeton en cache plus longtemps, soit en modifiant le délai d'expiration du cache dans l'assistant d'identification :

git config –global credential.helper “cache –timeout=86400”

Soit en le configurant pour stocker les informations d'identification en permanence dans ~/.github-credentials :

git config credential.helper store

Notez que si vous aviez précédemment activé ce cache, vous devrez peut-être supprimer la ligne avec les anciennes informations d'identification mises en cache dans ~/. github-credentials fichier.