Recherche de l’endroit où la clé a été utilisée
Pour déterminer où la clé a déjà été utilisée, ouvrez un terminal et tapez la commande ssh
. Utilisez l’indicateur -i
pour fournir le chemin de la clé à vérifier :
$ ssh -T -ai ~/.ssh/id_rsa git@github.com
# Connect to GitHub.com using a specific ssh key
> Hi USERNAME! You've successfully authenticated, but GitHub does not
> provide shell access.
Le nom d’utilisateur de la réponse est le compte sur GitHub.com auquel la clé est actuellement attachée. Si la réponse ressemble à « nom d’utilisateur/dépôt », la clé a été attachée à un dépôt en tant que clé de déploiement.
Pour forcer SSH à utiliser uniquement la clé fournie sur la ligne de commande, utilisez -o
pour ajouter l’option IdentitiesOnly=yes
:
ssh -v -o "IdentitiesOnly=yes" -i ~/.ssh/id_rsa git@github.com
Résolution du problème
Pour résoudre le problème, commencez par supprimer la clé de l’autre compte ou dépôt, puis ajoutez-la à votre compte.
Si vous n’avez pas d’autorisations pour transférer la clé et ne pouvez pas contacter un utilisateur qui dispose de ces autorisations, supprimez la paire de clés et générez-en une nouvelle.
Clés de déploiement
Une fois qu’une clé a été attachée à un dépôt en tant que clé de déploiement, elle ne peut pas être utilisée sur un autre dépôt. Si vous rencontrez cette erreur lors de la configuration des clés de déploiement, consultez « Gestion des clés de déploiement ».