Je possède plusieurs comptes GitLab et j'essaie de configurer l'authentification SSH. J'ai généré les paires de clés et les ai enregistrées dans le dossier ~/.ssh/public/proj1[2]/id_rsa.pub
y ~/.ssh/private/proj1[2]/id_rsa
Mon ~/.ssh/config
ressemble à ceci
Host proj1
HostName gitlab.com
AddKeysToAgent yes
UseKeychain yes
User git
IdentityFile ~/.ssh/private/proj1/id_rsa
Host proj2
HostName gitlab.com
AddKeysToAgent yes
UseKeychain yes
User git
IdentityFile ~/.ssh/private/proj2/id_rsa
maintenant quand j'essaie de cloner un dépôt de proj1 comme git clone git@proj1:user_and_stuff.git
Je reçois une erreur indiquant que je n'ai pas les privilèges suffisants. J'ai activé l'option -vv
dans le ssh de git et d'abord il identifie correctement la clé
debug1: Reading configuration data /Users/user/.ssh/config
debug1: /Users/user/.ssh/config line 1: Applying options for proj1
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 48: Applying options for *
debug1: Connecting to gitlab.com port 22.
debug1: Connection established.
debug1: identity file /Users/user/.ssh/private/proj1/id_rsa type -1
debug1: identity file /Users/user/.ssh/private/proj1/id_rsa-cert type -1
mais quelques lignes plus tard, sortant de nulle part.
debug1: Will attempt key: /Users/user/.ssh/private/proj2/id_rsa RSA SHA256:fp agent
debug1: Will attempt key: unrelated_key1 RSA SHA256:fp agent
debug1: Will attempt key: unrelated_key2 RSA SHA256:fp agent
debug1: Will attempt key: /Users/user/.ssh/private/proj1/id_rsa explicit
il propose d'abord la mauvaise clé et comme proj2 est aussi un compte gitlab il s'authentifie avec succès. Ce qui génère bien sûr l'erreur de permission car il tente de cloner proj1 alors qu'il est authentifié avec la clé de proj2.
Un conseil ? J'utilise mac OS.