Errore di Heroku: "Autorizzazione negata (chiave pubblica)"


94

Continuo a ricevere questo errore. Sto usando un Mac. Ho generato una chiave e l'ho aggiunta a heroku usando

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

Ma questo non funziona. Continuo a ricevere lo stesso errore. A parte reinstallare ssh-keygen, cosa posso fare al riguardo?

Risposte:


218

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

Per esempio, heroku keys:add ~/.ssh/id_rsa.pub


2
Sul mio Hackintosh mentre è installato Github per Mac, il file previsto si trova in questo percorso: ~ / .ssh / github_rsa.pub
Jahan

2
Prova anche ssh-keygen -t rsa -C "your_email@youremail.com" se hai ancora l'errore, per creare un altro file.pub e usa quello nel comando consigliato in questa risposta
Tom Roggero

19

la soluzione sopra non ha funzionato per me in quanto non avevo alcuna chiave generata nella mia cartella ~ / .ssh.

La mia soluzione era semplicemente digitare heroku keys:add

L'output nel terminale era:

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

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


4

ho affrontato lo stesso problema. Scrivere la mia esperienza in modo che aiuti qualcun altro.

Ho provato a seguire le istruzioni che sono state detialed sul sito web ufficiale - Come iniziare con la tua app Facebook su Heroku

Anche se è abbastanza dettagliato, specialmente il video, è abbastanza fastidioso notare che non menzionano la necessità di impostare le chiavi SSH. O è impostato di default (non lo so) o ottieni l'errore menzionato dal poster delle domande.

Quindi ho fatto quanto segue:

1. ha aperto la shell git

2. ha digitato quanto segue in

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. Successivamente sono stato in grado di ottenere il checkout del mio repository

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>

Per favore, non sottovalutare la mia risposta. Anche se non aggiungo alcun nuovo valore a ciò che è già pubblicato, ma spero che le mie esperienze aiuteranno qualcuno che è nuovo nell'uso di git & heruko. Quindi ho aggiunto schermate.

  • I miei 2 centesimi

La tua soluzione funziona in Git Bash, ma non so perché gli stessi passaggi non funzionano in modo coerente in Windows cmd ???
cyber101

2

Copia i file nel tuo percorso .ssh ex:

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

nella cartella git .ssh.

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

Se la cartella .ssh non esiste nella directory Git, creala e incolla i tuoi file.

Per qualche motivo Windows richiede che un percorso .ssh sia nella directory dell'utente oltre che nella directory Git. Di default questo non viene aggiunto, quindi devi semplicemente crearlo da solo.

Dopo aver aggiunto i file alla directory di Git, esegui nuovamente il seguente comando:

git push heroku master


1

se non hai ancora la chiave ssh, prova a generarla usando il comando seguente:

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

Per sbarazzarti del permesso di heroku negato (chiave pubblica) aggiungi le tue chiavi a heroku usando:

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

Per sbarazzarti del permesso Github negato (chiave pubblica) aggiungi le tue chiavi a Github usando:

4. ssh-add <path_to_your_ssh> 
     OR
  ssh-add
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.