image
image
image
image
image
image

Jeton dauthentification dans github

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

Depuis 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 ?

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 les mots de passe est un inconvénient majeur. C’est pourquoi, si vous avez récemment essayé d’envoyer 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 ce qu’on appelle 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 , vous entrerez le PAT. Vous pouvez également choisir de mettre en cache le jeton 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 gens.

Vous pouvez également passer à l’authentification SSH, qui fonctionne de manière assez similaire aux jetons d’accès, sauf qu’ils sont liés à votre machine et ne sont transmis nulle part. Pourtant, les PAT sont faciles à configurer et à utiliser, et disposent d’autorisations plus flexibles que les clés SSH.

La configuration

d’un PAT vous obligera à en créer un nouveau à partir des paramètres de Github et à échanger vos dépôts locaux à 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 générez-en un nouveau :

vous devrez vérifier le mot de passe réel de votre compte. Donnez un nom au jeton et sélectionnez une date d’expiration. Vous voudrez probablement le changer par rapport à la valeur par défaut de 30 jours, bien que Github affichera un avertissement si vous sélectionnez « Aucune 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 à partir de la ligne de commande avec vos dépôts, vous ne vous souciez probablement que de la portée « repo », qui donne le contrôle de vos dépôts.

Vous obtiendrez un jeton comme celui-ci, 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 entrer le nouveau jeton, et cela devrait fonctionner. Si votre cache est obsolète, vous devrez le réinitialiser.

Sous Windows, si vous utilisez Git natif (et non via WSL), vous devrez ouvrir « Gérer les informations d’identification Windows » à partir du Panneau de configuration ou du menu Démarrer, et modifier ou ajouter le mot de passe à .

Sur macOS, il est accessible via l’application Trousseau d’accès. Recherchez « github.com », trouvez l’entrée « 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 normalement, et il vous fera entrer le nouveau PAT s’il n’est pas encore mis en cache. Vous pouvez mettre en cache ce jeton plus longtemps, soit en modifiant le délai d’expiration du cache dans l’assistant d’informations d’identification :

git config --global credential.helper « cache --timeout=86400 »

Soit en le configurant pour stocker les informations d’identification de manière permanente dans :

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 le fichier.