Jak używać nowego certyfikatu .p8 firmy Apple dla APN w konsoli Firebase


83

Wraz z niedawnym ulepszeniem kont programistów Apple, mam problem z tym, że podczas próby utworzenia certyfikatów powiadomień wypychanych dostarcza mi certyfikat (.p8) zamiast APN, które można wyeksportować do (.p12).

Konsola Firebase akceptuje tylko certyfikaty (.p12), więc jak mogę to uzyskać z tych nowych (.p8) certyfikatów.


1
Skąd masz certyfikat .p8? Nadal mogę utworzyć plik .p12 z mojego KeyChain.
Ragul

Zaktualizowałem moją licencję konta Apple 2 dni wstecz i otrzymuję bezpośrednio certyfikaty .p8 zamiast p12, nawet bez pytania o plik CSR
Subso

czy możesz znaleźć rozwiązanie?
Dhaval Bhadania

@DhavalBhadania Moja odpowiedź została zamieszczona poniżej
Subso

Odpowiedzi:


65

Udało mi się to zrobić, wybierając opcję „Wszystkie” znajdującą się pod nagłówkiem „Klucze” w lewej kolumnie

wprowadź opis obrazu tutaj

Następnie kliknąłem przycisk plus w prawym górnym rogu, aby dodać nowy klucz

wprowadź opis obrazu tutaj

Wpisz nazwę klucza i zaznacz „APN”

wprowadź opis obrazu tutaj

Następnie przewiń w dół i wybierz Kontynuuj. Zostaniesz przeniesiony do ekranu, na którym będzie można pobrać plik .p8 teraz lub później. W moim przypadku otrzymałem ostrzeżenie, że można go pobrać tylko raz, więc chroń plik.


4
Dzięki, konto programisty zostało zaktualizowane. Nie ma bardziej APNs Auth KeysdoCertificates
Djiggy

Dzięki, uratowałeś mnie!
sioesi

@John, czy możesz mi pomóc, utknąłem przez ostatnie kilka dni. Nie mogę uruchomić fcm .. stackoverflow.com/questions/50292269
bibscy

Klucz może nie wygasać, ale „profile aprowizacji” tak. Czy nadal są zobowiązani do wysyłania powiadomień push, czy możemy się ich bezpiecznie pozbyć? Dzięki
andreszs

5
@John Idasetima Jestem zdezorientowany, jak ta odpowiedź na pytanie - który był Firebase akceptuje tylko p12, ale nowy klucz to p8. Twoja odpowiedź mówi tylko, jak pobrać klucz jako p8 . Czy twierdzisz, że Firebase akceptuje zarówno p8, jak i p12?
Gruntcakes

28

Firma Apple niedawno wprowadziła nowe zmiany w APN, a teraz Apple nalega, abyśmy używali „uwierzytelniania opartego na tokenach” zamiast tradycyjnych sposobów, których używamy do powiadamiania push.

Więc nie musisz się martwić o ich wygaśnięcie, a te certyfikaty p8 są przeznaczone zarówno do programowania, jak i do produkcji, więc ponownie nie ma potrzeby generowania 2 oddzielnych certyfikatów dla każdego trybu.

Aby wygenerować p8, po prostu przejdź do swojego konta programisty i wybierz tę opcję „Klucz uwierzytelniający powiadomienia Apple Push (piaskownica i produkcja)”

wprowadź opis obrazu tutaj

Następnie wygeneruje bezpośrednio plik p8.

Mam nadzieję, że to rozwiąże Twój problem.

Przeczytaj te nowe zmiany APN od Apple: https://developer.apple.com/videos/play/wwdc2016/724/

Możesz również przeczytać to: https://developer.apple.com/library/prerelease/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/APNsProviderAPI.html


1
Czy możemy przekonwertować .p8 na .PEM?
Dimple Shah

Każda platforma, która wymaga pliku .p8, nie potrzebuje pliku .PEM, jeśli nadal jest wymagany, musisz go oddzielić
Hardik Shah

1
Myślę, że Firebase nie obsługuje jeszcze używania kluczy autoryzacyjnych APN (.p8). Ale jednocześnie łatwiej jest teraz zrobić to z własnego serwera.
Andre Cytryn

2
Dzięki - nie używam Firebase, ale uznałem, że ta odpowiedź jest najbardziej pomocna przy przenoszeniu z plików .pem do .p8. Uważam również, że ten przewodnik krok po kroku od Apple jest nieoceniony; to był kolejny krok dla mnie po wykonaniu Twojej odpowiedzi: eladnava.com/…
kris

4
@HardikShah Ta opcja „Klucz uwierzytelniania powiadomienia Apple Push (piaskownica i produkcja)” jest niedostępna. czemu?
Balasubramanian

21

Tak więc, po pewnym czasie zorientowałem się, że istnieje również stara usługa generowania certyfikatów push.

Masz dwie możliwości:

  • Klucz uwierzytelniania Apple Push Notification (piaskownica i produkcja)
  • Usługa Apple Push Notification SSL (piaskownica i produkcja)

Ci, którzy chcą uzyskać certyfikat w starym stylu .p12, mogą go uzyskać z drugiej opcji. Nie korzystałem jeszcze z pierwszej opcji, ponieważ większość zewnętrznych dostawców usług powiadomień push nadal potrzebuje certyfikatu w formacie .p12.

Przykładowy obraz usługi powiadomień push


2
Ta opcja „Klucz uwierzytelniania Apple Push Notification (piaskownica i produkcja)” jest niedostępna. Czemu ?
Balasubramanian

2
Nie mogę również znaleźć tej opcji w Developer.apple.com, czy jest to inny sposób na utworzenie tego pliku p8? lub przekonwertować p12 na P8?
Parth Mehta

@ParthMehta Czy masz jakieś rozwiązanie tego problemu?
Balasubramanian

2
To samo tutaj. Nie widzę opcji klucza uwierzytelniania Apple Push Notification
ckim16

1
To samo, opcja „Klucz uwierzytelniający” nie jest dla mnie dostępna :(
Axel Guilmin

15

Konsola Firebase akceptuje teraz plik .p8, w rzeczywistości zaleca przesłanie pliku .p8.

Możesz zobaczyć na załączonym zrzucie ekranu


3
Proszę poprawić mnie, jeśli jest źle, ale ten prefiks identyfikatora aplikacji jest w rzeczywistości identyfikatorem zespołu znajdującym się na stronie Informacje o członkostwie , prawda? Ponieważ podpowiedź wyraźnie mówi, że znajduje się na stronie Informacje o członkostwie, a nawet zawiera linki do niej.
andreszs

2
Jaki jest tam wymieniony „identyfikator klucza”? Uważaj mnie za nooba.
Umair Ahmed

2
@UmairAhmed Ciąg tokena urządzenia, który otrzymujesz, gdy prosisz o rejestrację w celu otrzymywania powiadomień push.
Huy-Anh Hoang

1
Nie. To nie jest token urządzenia. Jest to ciąg znaków po podkreśleniu w nazwie pliku .p8. W ten sposób ---> AuthKey_A5HG8NYIFC.p8. Możesz go również zobaczyć po utworzeniu klucza w menu Klucz w sekcji Certyfikaty, identyfikatory i profile w witrynie Apple Developer.
Somoy Das Gupta,

9

Wykonaj następujące kroki:

1. Wygeneruj klucz autoryzacji APN
Otwórz stronę Klucz autoryzacji APNs w Centrum deweloperów i kliknij +przycisk, aby utworzyć nowy klucz autoryzacji APNs .

wprowadź opis obrazu tutaj

Na następnej stronie wybierz Klucz uwierzytelniania Apple Push Notification (Sandbox i produkcja) i kliknij Kontynuuj u dołu strony.

wprowadź opis obrazu tutaj

Apple wygeneruje następnie .p8plik klucza zawierający Twój klucz autoryzacji APN.

wprowadź opis obrazu tutaj

Pobierz .p8plik klucza na swój komputer i zapisz go na później. Pamiętaj też, aby gdzieś zapisać identyfikator klucza, ponieważ będziesz go potrzebować później podczas łączenia się z APN.

2. Wyślij powiadomienia push

Ref: APNS (Skonfiguruj powiadomienia push)

Ważne: zapisz kopię zapasową klucza w bezpiecznym miejscu. Nie zostanie ponownie wyświetlony i nie będzie można go później odzyskać.


3
Klucz autoryzacji APN nie istnieje w moim portalu dla programistów. Czy ktoś wie dlaczego?
ckim16

@ ckim16 - Może zostać wygenerowany raz i nie będzie ponownie widoczny (usuwa opcje klucza APNS Auth). Tutaj jest odniesienie do twojego zapytania (help.apple.com/xcode/mac/current/#/…). Jeśli wygenerowałeś go wcześniej, nie będzie dla Ciebie ponownie widoczny.
Krunal

Zastanawiam się, czy twój link działa tylko dla osób, które zapłaciły za posiadanie konta programisty Apple. Dla mnie przekierowuje do developer.apple.com/account/#/welcome
Ryan

@Krunal Utknąłem w ciągu ostatnich kilku dni, próbując połączyć się z komunikacją w chmurze Firebase za pomocą pliku .p8 i nie mogę go uruchomić. Możesz
rzucić

Nie pobiera dla mnie pliku p8: - |
Oliver Dixon,

3

Podczas przesyłania pliku p8 do Firebase w polu z napisem Prefiks identyfikatora aplikacji (wymagane) należy podać identyfikator zespołu. Możesz go pobrać z https://developer.apple.com/account/#/membership i skopiować / wkleić identyfikator zespołu, jak pokazano poniżej.

wprowadź opis obrazu tutaj


2
Dziękuję, właśnie tego szukałem. Etykieta jest ewidentnie błędna w konsoli FCM i nikt nie zauważył tego błędu nawet rok później.
andreszs

2

Możesz utworzyć dla niego plik .p8 na https://developer.apple.com/account/

Następnie przejdź do Certyfikaty, identyfikatory i profile> Klucze> dodaj

apple_key

Wybierz usługę Apple Push Notification (APN), wprowadź nazwę klucza (cokolwiek).

Następnie kliknij „Kontynuuj”, po „Zarejestruj się”, a otrzymasz i możesz go pobrać.

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.