Si comme moi vous synchronisez votre Repository GitHub avec votre Jeedom de développement, vous rencontrez depuis le 13 aout 2021 une nouvelle erreur.
Message d’erreur
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.
fatal: Authentication failed for ‘https://github.com/xx/’
Explication
Ă€ compter du 13 aoĂ»t 2021, Github n’accepte plus les mots de passe de compte lors de l’authentification des opĂ©rations Git sur GitHub.com.
Ils exigent l’utilisation d’une authentification basĂ©e sur des jetons, comme un jeton d’accès personnel (pour les dĂ©veloppeurs) ou un jeton d’installation OAuth ou GitHub App (pour les intĂ©grateurs) pour toutes les opĂ©rations Git authentifiĂ©es sur GitHub.com. Vous pouvez Ă©galement continuer Ă utiliser les clĂ©s SSH si vous prĂ©fĂ©rez.
Comment s’en sortir ?
J’ai dans un premier temps cherchĂ© Ă crĂ©er des clĂ©s privĂ©/publique en SSH qu’on configure sur Github, tout cela est acceptĂ© mais la difficultĂ© c’est que le lien SSH, il se situe entre votre Jeedom et Github et non entre votre ordinateur et Jeedom. J’ai abandonnĂ© cette piste. Si quelqu’un trouve comme faire un lien SSH entre Jeedom et Github en ligne de commande, je suis preneur de l’info.
J’ai donc tentĂ© de trouver comment fonctionnaient les Token (Jetons) et j’ai trouvĂ© qu’en utilisant en ligne de commande le Token au lieu du mot de passe le Push fonctionnait !!! EurĂŞka !!
Voici donc la manip :
GĂ©nĂ©rer son Jeton d’accès
Les jetons d’accès personnels sont une alternative Ă l’utilisation de mots de passe pour l’authentification auprès de GitHub lors de l’utilisation de l’ API GitHub ou de la ligne de commande .
Par mesure de sĂ©curitĂ©, GitHub supprime automatiquement les jetons d’accès personnels qui n’ont pas Ă©tĂ© utilisĂ©s depuis un an. Pour fournir une sĂ©curitĂ© supplĂ©mentaire, GitHub recommande fortement d’ajouter une expiration Ă vos jetons d’accès personnels (ce que je ne fais pas)
- VĂ©rifiez votre adresse e-mail , si elle n’a pas encore Ă©tĂ© vĂ©rifiĂ©e.
- Dans le coin supĂ©rieur droit de n’importe quelle page, cliquez sur votre photo de profil, puis sur Settings.
- Dans la barre latérale gauche, cliquez sur Developer settings
Puis Personal access tokens
- Cliquez sur Générate new token
- Donnez Ă votre jeton un nom descriptif.
- Pour attribuer une date d’expiration Ă votre jeton.
- Sélectionnez les étendues ou les autorisations que vous souhaitez accorder à ce jeton. Pour utiliser votre jeton pour accéder aux référentiels à partir de la ligne de commande, sélectionnez repo .
- Cliquez sur Generate.
RĂ©cupĂ©rer le Jeton d’accès
A la fin de la gĂ©nĂ©ration, Githug donne le Jeton d’accès, si on a loupĂ© de le copier au bon moment, on peut en gĂ©nĂ©rer un autre :
Utilisation du Jeton d’accès
C’est très simple, on l’utilise en lieu et place du mot de passe (login n’a pas changĂ©).
Info Bonus
Pour ne pas avoir Ă retaper sans arrĂŞt vos mots de passe, voici deux commandes que vous pouvez inclure dans vos scripts MobaXtrem :
git config credential.helper store
– stocke les informations d’identification indĂ©finiment.git config credential.helper 'cache --timeout=3600'
– magasins pendant 60 minutes