GitHub – Support for password authentication was removed on August 13, 2021.

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 tokenBouton Générer un nouveau jeton
  • 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 .Sélection des étendues de jetons
  • 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

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *