Descobrir onde a chave foi usada
Para determinar onde a chave foi usada, abra um terminal e digite o comando ssh
. Use o sinalizador -i
para fornecer o caminho para a chave que deseja marcar:
$ ssh -T -ai ~/.ssh/id_rsa git@hostname
# Conecte-se a sua instância do GitHub Enterprise Server usando uma chave ssh específica
> Olá, username! Você conseguiu se autenticar, mas o GitHub não
> fornece acesso shell.
O username na resposta é a conta do GitHub Enterprise Server a que a chave está vinculada no momento. Se a resposta for parecida com "username/repo", a chave foi vinculada a um repositório como chave de implantação.
Para forçar o SSH a usar apenas a chave fornecida na linha de comando, use -o
para adicionar a opção IdentitiesOnly=yes
:
$ ssh -v -o "IdentitiesOnly=yes" -i ~/.ssh/id_rsa git@hostname
Corrigir o problema
Para resolver o problema, primeiro remova a chave da outra conta ou repositório e a adicione à sua conta.
Se você não tiver permissões para transferir a chave e não puder entrar em contato com um usuário que tenha, remova o par de chaves e gere uma totalmente nova.
Chaves de implantação
Depois que uma chave tiver sido vinculada a um repositório como uma chave de implantação, ela não poderá ser usada em outro repositório. Se você encontrar este erro enquanto configura chaves de implantação, consulte "Gerenciar de chaves de implantação."