web-dev-qa-db-fra.com

Erreur "Auth Failed" avec EGit et GitHub

J'ai installé le plug-in EGit sur Eclipse Helios et j'essaie de l'utiliser avec mon compte GitHub, mais lorsque j'essaie de le configurer, l'erreur "Auth Failed" (Auth a échoué) est générée.

Je l'avais googlé mais pas de chance ... il semble que ce soit un problème de mot de passe complexe mais AFAIK EGit cherche le bon endroit (/home/user/.ssh/id_rsa) et je n'ai aucun problème à me connecter avec le client console ssh ou git.

Certains blogs disent que c'est un problème d'URI et de l'analyseur Egit, mais je n'ai toujours pas trouvé de solution.

92
tehsis

Ma réponse est peut-être dépassée, mais j'espère que cela pourra être utile à quelqu'un.

  1. Dans votre Eclipse, accédez à Window> Préférences> Général> Connexions réseau> SSH2 (ou tapez simplement "SSH2" dans la boîte de filtrage de la fenêtre Préférences).

  2. Dans la console "Gestion des clés"} _, appuyez sur le bouton "Générer la clé RSA ...". Vous pouvez éventuellement ajouter un commentaire .__ (généralement une adresse électronique) et un mot de passe composé pour votre clé. La phrase secrète Sera utilisée lors de l'authentification Sur GitHub.

  3. Copiez votre clé publique générée (dans une boîte juste en dessous du bouton "Générer une clé RSA ..." ) Et ajoutez-la à votre compte GitHub
  4. Appuyez sur le bouton «Enregistrer la clé privée ...» _ pour enregistrer votre clé RSA privée dans le fichier Par défaut, les clés sont stockées dans le répertoire personnel SSH2 (voir Onglet "Général" ).

C'est tout! Vous devriez maintenant pouvoir envoyer votre code vers le dépôt GitHub. 

127
Andrei Petrenko

J'ai eu exactement le même problème mais j'ai trouvé le remède d'un rapport de bug Eclipse!

Une variable d'environnement nommée GIT_SSH doit être définie avec un chemin d'accès à un exécutable ssh [1].

Par exemple sur Ubuntu Linux (10.10 64bits):

> export GIT_SSH=/usr/bin/ssh
> Eclipse

Après cela, le référentiel GitHub fonctionne comme il se doit. J'ai testé cela avec Eclipse Galileo et Indigo.

Le problème est vraiment énervant et la solution est loin de Nice. Pour le moment, pour rendre la solution permanente pour, au moins les utilisateurs d’Ubuntu, il faut rendre la variable env permanente. Cela peut être fait en ajoutant la commande export à ~/.profile ou ~/.bashrc [2]. Par exemple:

> cd ~
> echo "export GIT_SSH=/usr/bin/ssh" >> .profile

Et puis redémarrez Eclipse pour prendre effet.

Sources:

26
Akseli Palén

Je l'ai résolu en sélectionnant http comme protocole et en donnant mon nom d'utilisateur et mon mot de passe GitHub.

15
hari_sree

Après avoir passé des heures à chercher la solution à ce problème, j’ai enfin trouvé l’or en apportant les modifications mentionnées sur/ Eclipse Forum .

Pas:

Prérequis: mysysgit est installé avec la configuration par défaut.

1.Créez le fichier C: /Users/Username/.ssh/config (remplacez "Nom d'utilisateur" par votre nom d'utilisateur Windows 7.)

Host github.com
HostName github.com
User git
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa

2. Essayez de configurer le référentiel distant maintenant dans Eclipse.

À votre santé. Cela devrait fonctionner parfaitement.

9
Rushal A

Vous devez installer msysgit, après l’installation, vous devez ouvrir Git Bash et y entrer les commandes suivantes:

$ git config --global user.name "Gennadiy Zlobin" (your name)
$ git config --global user.email [email protected] (your email)
$ ssh-keygen -C "[email protected]" -t rsa (your email)

Maintenant, vos clés générées sont en C:\Users\username\.ssh (sous Windows 7). 
Ensuite, vous chargez le contenu de votre clé publique dans votre projet sur Github. 
Dans Eclipse, ouvrez Window->Preferences->General->Network->SSH2 et définissez votre ~/.ssh comme SSH Home

Après cela, allez à Key Management tab et Charger la clé existante - définissez ici votre clé privée dans ~/.ssh.

Après cela, vous pouvez pousser votre projet sur Github (mais j'ai défini le protocole ssh, pas git + ssh).

8
gennad

J'ai résolu le même problème en ajoutant ma clé à ssh;

ssh-add ~/.ssh/id_rsa 

puis entré la phrase secrète et besoin de redémarrer.

5
volkan

Pour les utilisateurs * nix qui utilisent SSH:

Assurez-vous que le nom d'utilisateur de votre compte sur votre ordinateur local ne diffère pas de celui du compte sur le serveur. Apparemment, eGit ne semble pas être capable de gérer cela. Par exemple, si votre nom d'utilisateur sur votre ordinateur local est "john" et que le compte que vous utilisez sur le serveur s'appelle "git", egit ne parvient tout simplement pas à se connecter (pour moi de toute façon). Le seul travail que j'ai trouvé est de vous assurer que vous avez des noms d'utilisateur identiques sur la machine locale et sur le serveur.

4
Jeshurun

Sur le lien ci-dessous, j'ai posté ce qui a fonctionné pour moi ...

http://www.Eclipse.org/forums/index.php?t=msg&goto=648905&S=9bcfa96ab726d744d41a19c7fb02d723#msg_648905

3
Melissa Rice

Pour vous qui, comme moi, vous avez déjà configuré les clés ssh mais obtenez toujours les erreurs:

Assurez-vous que vous avez configuré une télécommande Push. Cela a fonctionné pour moi lorsque j'ai eu les deux problèmes impossible d'obtenir les références du référentiel distant- ("... phrase secrète pour ..." et "échec de l'authentification" dans la boîte de dialogue "Push ...").

A condition que vous ayez déjà:

  1. Configurez vos clés SSH avec Github (Fenêtre> Préférences> Général> Connexions réseau> SSH2)

  2. Configurez votre référentiel local (vous pouvez suivre ce guide pour cela) 

  3. Création d'un référentiel Github ( même guide )

... voici comment vous le faites:

  • Accédez à la vue Référentiels Git (Fenêtre> Afficher la vue> Autre> Référentiels Git).
  • Développez votre référentiel et cliquez avec le bouton droit sur Télécommandes -> "Créer une télécommande"
  • "Nom distant": Origine, "Configurer Push": coché -> cliquez sur "OK"
  • Cliquez sur le bouton "Changer ..."
  • Collez votre git URI et sélectionnez le protocole ssh -> cliquez sur "Terminer"
  • Maintenant, cliquez sur "Enregistrer et pousser" et vous devriez maintenant recevoir un mot de passe Invite -> entrer la clé secrète de la clé publique ici (à condition que vous DID (et vous deviez) configurer une phrase secrète sur votre clé publique) -> cliquez sur "OK"
  • Vous devriez maintenant avoir une fenêtre de confirmation disant "Poussé vers YourRepository} - Origin" -> cliquez sur "OK"
  • Pousser vers l'amont, mais cette fois utilise "Référentiel distant configuré" comme référentiel de destination.
  • Va te chercher une tasse de café bien méritée!
2
Roger

Mes quatre clés: mes clés SSH ont été configurées dans Cygwin, à l'emplacement C:\cygwin\home\<utilisateur> .ssh. J'ai donc indiqué SSH à ce dossier au lieu du dossier par défaut (Win7) C:\Utilisateurs\<utilisateur>\ssh , selon ces instructions: http://wiki.Eclipse.org/EGit/User_Guide/Remote#Eclipse_SSH_Configuration

et utilisé le protocole ssh, et cela fonctionne bien. Essayer d'utiliser le protocole git donne toujours "Utilisateur non pris en charge sur le protocole git", cependant.

2
drkvogel

Sous Windows, configurer GIT_SSH sur openssh fourni avec msys git ne fonctionnait pas (Eclipse était bloqué pendant la validation). Le régler sur TortoisePlink a résolu le problème (je suppose que plink original fonctionnerait aussi). Le bonus ajouté est désormais Eclipse utilise des clés stockées dans pageant.

1
Piotr Dobrogost

J'ai mis à jour le plugin avec les versions nocturnes: http://www.Eclipse.org/egit/download/

Avec une mise à jour, cela a fonctionné pour moi. (Eclipse Helios, Mac OS X)

1
fbrandel

Dans votre vue GIT où vous avez vos référentiels, vous verrez une structure telle que:

  • branches
  • mots clés
  • références
  • télécommandes
  • etc...

Cliquez sur les télécommandes, faites un clic droit sur l'URL du référentiel et sélectionnez "Modifier les informations d'identification".

1
Fico

Avez-vous essayé d'utiliser le protocole ssh à la place de git + ssh? J'ai le même problème, et cela l'a résolu, même si la documentation officielle le dit

1
kamisama

Je l'ai résolu en sélectionnant https comme protocole, puis en ajoutant mon nom d'utilisateur et mon mot de passe github

1
eden

Je voulais rendre public une fois moi aussi un correctif de code Google et obtenir la même erreur . Commencé avec This video, mais à Enregistrer et publier une erreur. J'ai vu qu'il y avait plusieurs questions à ce sujet. Certains sont des utilisateurs de Windows, ce sont les plus chanceux, car généralement aucun problème d’autorisations et certains sont des utilisateurs de Linux.

J'ai un mac pour le développement mobile et je rencontre très souvent ce problème. La source de ce problème est la solution "indépendante de la plate-forme", qui ne s’intéresse pas suffisamment à mac et qui n’a pas accès au trousseau, où sont stockés les certificats, les fichiers .pem, etc.

Tout ce que je voulais, c’était de ne définir aucun paramètre d’environnement, ni de ligne de commande, mais de simples clics basés sur une interface graphique, comme un utilisateur normal.

La moitié de la partie a été réalisée avec le plugin Eclipse Git, la deuxième partie (Push to Github) avec Mac Github

Gentil et facile :)

Tout peut être fait avec cette application native si je commence à l'apprendre, j'ai juste besoin de la fonctionnalité Push de sa part.

En espérant que cela aidera un utilisateur mac une fois.

0
user529543

Je pourrais utiliser console pour pousser/extraire les référentiels, mais pas dans Eclipse . Dans mon cas, Eclipse semble ne pas pouvoir lire ma clé privée SSH, ma clé a commencé par:

-----BEGIN OPENSSH PRIVATE KEY-----

Et j'ai remarqué que la clé de mon collègue commençait par:

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED

Je pense qu'actuellement, Eclipse ne peut pas utiliser ce nouveau type de clé (OPENSSH PRIVATE KEY).

Je l'ai résolu par: Régénérez votre clé ssh en utilisant la commande:

ssh-keygen -m PEM -t rsa -b 2048

Cela utilisera l'ancienne méthode pour générer la clé: Elle commencera donc par les en-têtes:

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED

voir plus d'informations sur:

https://github.com/duplicati/duplicati/issues/3360

Ensuite, vous pouvez charger la clé à nouveau dans eclilpse en utilisant Préférences -> Connexions réseau -> SSH2, cliquez sur "Ajouter une clé privée" clés, car Eclipse doit le recharger)

0
Angia

J'ai découvert que si je configurais l'authentification en deux étapes dans github, Eclipse ne pouvait pas se connecter à Github - ce qui est logique, car l'authentification en deux étapes dans github nécessite la saisie d'un numéro à partir de SMS. _ (et Eclipse n'aurait pas cette information).

Si tel est votre scénario, vous pouvez envisager de désactiver votre authentification en deux étapes dans github et voir si cela vous aide.

0
kevlaria

J'avais le même problème qui, semble-t-il, était dû à la configuration. L’application github mac osx avait créé une clé privée ssh appelée github_rsa

Dans votre Eclipse, allez à Window > Preferences > Network Connections > SSH2

Dans l'onglet Général, vous devriez voir SSH2 home /Users/<you username>/.ssh et vous verrez probablement id_dsa, id_rsa défini comme clé privée. 

Cliquez sur 'Ajouter une clé privée' et sélectionnez github_rsa situé /Users/<you username>/.ssh

0
scottyab

SI VOUS AVEZ UN FICHIER PEM : Dans Eclipse, accédez à Fenêtre> Préférences> Connexions réseau> SSH2, puis ajoutez le chemin d'accès à votre fichier PEM vers "Clés privées", ce qui devrait résoudre le problème.

0
msamadi

J'ai trouvé un message sur les forums Eclipse qui a résolu ce problème pour moi.

0
Daniel Jonsson

Je rencontre le même problème.

Je pensais que cela avait quelque chose à voir avec mes informations d'identification et mon authentification.

Puis finalement, j'ai réalisé que l'URI que j'ai configuré n'est pas une variante HTTP. 

J'essayais de pousser à SSH URI de mon Git avec la configuration HTTP.

Vérifiez votre URL dans

Perspective Git> Télécommandes> Origine> Configurer la récupération> Modifier> Assurez-vous que le préfocal est HTTPS et que l’URL est https version .

0
MohanRaj

Pour les clés ssh existantes, je pense que c'est un bogue dans Eclipse Juno 3.8.

Ce que j'ai fait:

1) Chargez la clé existante en allant à: Fenêtre> Préférences> "Rechercher ssh"> onglet Gestion des clés> Charger la clé existante> Sélectionnez la clé privée que vous avez déjà}

2) Enregistrez cette clé en cliquant sur le bouton Enregistrer la clé privée. Appelons-le id_dsa_github

3) Maintenant, vérifiez si Push and Pull fonctionnent ou non. CA devrait etre.

4) Maintenant, dans l'onglet Général, supprimez la clé privée id_dsa_github et ajoutez votre clé privée précédente en cliquant sur le bouton Ajouter une clé privée

Maintenant vous êtes prêt à partir. Il faut au moins une fois pour faire tout ce qui se passe entre EGit et register, je suppose.

0
soham