Erro Heroku: “Permissão negada (chave pública)”


94

Eu continuo recebendo esse erro. Estou usando o Mac. Eu gerei uma chave e a adicionei ao heroku usando

heroku config:add key="ssh-rsa blahblah=me@me.com"

Mas isso não funciona. Continuo recebendo o mesmo erro. Além de reinstalar o ssh-keygen, o que posso fazer sobre isso?

Respostas:


218

Experimente heroku keys:add <path-to-your-public-key>.

Por exemplo, heroku keys:add ~/.ssh/id_rsa.pub


2
No meu Hackintosh enquanto instalei o Github para Mac, o arquivo pretendido está neste caminho: ~ / .ssh / github_rsa.pub
Jahan

2
Tente também ssh-keygen -t rsa -C "seu_email@youremail.com" se ainda estiver tendo o erro, para criar outro arquivo.pub e usar esse no comando recomendado nesta resposta
Tom Roggero

19

a solução acima não funcionou para mim porque eu não tinha nenhuma chave gerada na minha pasta ~ / .ssh.

Minha solução foi simplesmente digitar heroku keys:add

A saída no terminal foi:

Could not find an existing public key.
Would you like to generate one? [Yn] y
Generating new SSH public key.
Uploading SSH public key /home/funkdified/.ssh/id_rsa.pub... done

Veja: https://devcenter.heroku.com/articles/keys


4

eu enfrentei o mesmo problema. Escrever minha experiência para que ajude outra pessoa.

Tentei seguir as instruções fornecidas no site oficial - Primeiros passos com seu aplicativo do Facebook no Heroku

Embora seja bastante detalhado, especialmente o vídeo, é bastante irritante notar que eles não mencionam a necessidade de configurar as chaves SSH. Ou ele é definido por padrão (não sei) ou você obtém o erro mencionado pelo autor da pergunta.

Então eu fiz o seguinte:

1 abriu o shell git

2 digitei o seguinte em

C:\Users\blue\Documents\GitHub> heroku keys:add
Found the following SSH public keys:
1) github_rsa.pub
2) id_rsa.pub
Which would you like to use with your Heroku account? 2

3 - Posteriormente a isso, fui capaz de obter o checkout do meu repositório

C:\Users\blue\Documents\GitHub> heroku login
Enter your Heroku credentials.
Email: sxxxxt.xxxx@gmail.com
Password (typing will be hidden):
Authentication successful.
C:\Users\blue\Documents\GitHub> git clone git@heroku.com:sxxxd-plains-8530.gi
t
Cloning into 'sxxxd-plains-8530'...
Warning: Permanently added 'heroku.com,50.19.85.154' (RSA) to the list of known
hosts.
remote: Counting objects: 180, done.
remote: Compressing objects: 100% (112/112), done.
remote: Total 180 (delta 82), reused 132 (delta 62)
Receiving objects:  81% (146/180), 76.00 KiB | 62 KiB/s
Receiving objects: 100% (180/180), 137.91 KiB | 62 KiB/s, done.
Resolving deltas: 100% (82/82), done.
C:\Users\blue\Documents\GitHub>

Por favor, não downvote minha resposta. Mesmo que eu não agregue nenhum valor ao que já foi postado, espero que minhas experiências ajudem alguém que é novo no uso do git & heruko. Daí eu adicionei capturas de tela.

  • Meus 2 centavos

Sua solução funciona no Git Bash, mas não sei porque os mesmos passos não funcionam de forma consistente no windows cmd ???
cyber101

2

Copie os arquivos em seu caminho .ssh, por exemplo:

/c/Users/<yourusername>/.ssh/<files>

para a pasta git .ssh.

/c/Program Files/Git/.ssh/<paste files here>

Se a pasta .ssh não existir no diretório Git, simplesmente crie-a e cole seus arquivos.

Por algum motivo, o Windows exige que um caminho .ssh esteja no diretório do usuário, bem como no diretório Git. ON default não é adicionado, então você simplesmente tem que criá-lo.

Depois de adicionar os arquivos ao diretório do Git, basta executar o seguinte comando novamente:

git push heroku master


1

se você ainda não tem a chave ssh, tente gerá-la usando o comando abaixo:

1. ssh-keygen -t rsa -C "your_email@example.com"
2. ssh-add

Para se livrar da permissão negada do heroku (chave pública), adicione suas chaves ao heroku usando:

3. heroku keys:add <path_to_your_ssh>
    OR
 heroku keys:add

Para se livrar da permissão negada do Github (chave pública), adicione suas chaves ao Github usando:

4. ssh-add <path_to_your_ssh> 
     OR
  ssh-add
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.