Błąd Heroku: „Odmowa dostępu (klucz publiczny)”


94

Ciągle otrzymuję ten błąd. Używam komputera Mac. Wygenerowałem klucz i dodałem go do heroku za pomocą

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

Ale to nie działa. Ciągle otrzymuję ten sam błąd. Oprócz ponownej instalacji ssh-keygen, co mogę z tym zrobić?

Odpowiedzi:


217

Spróbuj heroku keys:add <path-to-your-public-key>.

Na przykład, heroku keys:add ~/.ssh/id_rsa.pub


2
Na moim Hackintoshu po zainstalowaniu Githuba dla Maca, zamierzony plik znajduje się w tej ścieżce: ~ / .ssh / github_rsa.pub
Jahan

2
Spróbuj również ssh-keygen -t rsa -C "your_email@youremail.com", jeśli nadal występuje błąd, aby utworzyć inny plik.pub i użyć tego w zalecanym poleceniu w tej odpowiedzi
Tom Roggero

19

powyższe rozwiązanie nie zadziałało, ponieważ nie miałem żadnych kluczy wygenerowanych w moim folderze ~ / .ssh.

Moim rozwiązaniem było po prostu wpisanie heroku keys:add

Wynik w terminalu był następujący:

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

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


4

napotkałem ten sam problem. Pisanie mojego doświadczenia, aby pomagało to komuś innemu.

Próbowałem postępować zgodnie z instrukcjami, które zostały ujawnione na oficjalnej stronie internetowej - Rozpoczynanie pracy z aplikacją Facebook na Heroku

Chociaż jest to dość szczegółowe, zwłaszcza wideo, denerwujące jest to, że nie wspominają o konieczności konfigurowania kluczy SSH. Albo jest ustawiony domyślnie (nie wiem), albo pojawia się błąd wspomniany na plakacie z pytaniami.

Więc zrobiłem co następuje:

1. otworzył powłokę git

2. wpisał następujące

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. W następstwie tego udało mi się uzyskać dostęp do mojego repozytorium

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>

Proszę, nie odrzucaj mojej odpowiedzi. Mimo że nie dodam żadnej nowej wartości do tego, co już zostało opublikowane, mam nadzieję, że moje doświadczenia pomogą komuś, kto jest nowy w korzystaniu z git & heruko. Dlatego dodałem zrzuty ekranu.

  • Moje 2 centy

Twoje rozwiązanie działa w Git Bash, ale nie wiem dlaczego te same kroki nie działają konsekwentnie w Windows cmd ???
cyber101

2

Skopiuj pliki w swojej ścieżce .ssh, np .:

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

do folderu git .ssh.

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

Jeśli folder .ssh nie istnieje w katalogu Git, po prostu go utwórz, a następnie wklej pliki.

Z jakiegoś powodu Windows wymaga, aby ścieżka .ssh znajdowała się w katalogu użytkownika, a także w katalogu Git. WŁĄCZONE domyślnie nie jest to dodawane, więc po prostu musisz je utworzyć samodzielnie.

Po dodaniu plików do katalogu Gita po prostu uruchom ponownie następujące polecenie:

git push heroku master


1

jeśli nie masz jeszcze klucza ssh, spróbuj go wygenerować za pomocą poniższego polecenia:

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

Aby pozbyć się odmowy uprawnień heroku (klucz publiczny), dodaj swoje klucze do heroku za pomocą:

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

Aby pozbyć się odmowy uprawnień Github (klucz publiczny), dodaj swoje klucze do Github za pomocą:

4. ssh-add <path_to_your_ssh> 
     OR
  ssh-add
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.