Próbowałem i próbowałem wygenerować plik .pem, za każdym razem generując certyfikaty z konta klienta, a następnie generując plik .pem za pomocą terminala, ale nie ma sensu. Czy ktoś może podać procedurę krok po kroku?
Próbowałem i próbowałem wygenerować plik .pem, za każdym razem generując certyfikaty z konta klienta, a następnie generując plik .pem za pomocą terminala, ale nie ma sensu. Czy ktoś może podać procedurę krok po kroku?
Odpowiedzi:
Aby włączyć powiadomienie wypychane dla aplikacji na iOS, musisz utworzyć i przesłać do nas certyfikat Apple Push Notification Certificate (plik .pem), abyśmy mogli połączyć się z serwerem Apple Push Server w Twoim imieniu.
( Zaktualizowana wersja ze zaktualizowanymi zrzutami ekranu tutaj )
Krok 1: Zaloguj się do portalu administracyjnego iOS, kliknij „Certyfikaty” na lewym pasku nawigacyjnym. Następnie kliknij przycisk „+”.
Krok 2: Wybierz opcję powiadomień push Apple z usługi SSL (Produkcja) w sekcji Dystrybucja, a następnie kliknij przycisk „Kontynuuj”.
Krok 3: Wybierz identyfikator aplikacji, którego chcesz użyć dla aplikacji BYO (jak utworzyć identyfikator aplikacji), a następnie kliknij „Kontynuuj”, aby przejść do następnego kroku.
Krok 4: Wykonaj kroki „Informacje o tworzeniu żądania podpisania certyfikatu (CSR)”, aby utworzyć żądanie podpisania certyfikatu.
W celu uzupełnienia instrukcji dostarczonej przez Apple. Oto kilka dodatkowych zrzutów ekranu, które pomogą Ci wykonać wymagane kroki:
Krok 4 Dodatkowy zrzut ekranu 1: Przejdź do Asystenta certyfikatu dostępu do pęku kluczy na komputerze Mac.
Krok 4 Dodatkowy zrzut ekranu 2: Wpisz informacje o certyfikacie. Kliknij Kontynuuj.
Krok 5: Prześlij plik „.certSigningRequest” wygenerowany w kroku 4, a następnie kliknij przycisk „Generuj”.
Krok 6: Kliknij „Gotowe”, aby zakończyć rejestrację, strona portalu administracyjnego iOS zostanie odświeżona i wygląda następująco:
Następnie kliknij przycisk „Pobierz”, aby pobrać właśnie utworzony certyfikat (plik .cer). - Kliknij dwukrotnie pobrany plik, aby zainstalować certyfikat w Keychain Access na komputerze Mac.
Krok 7: Na komputerze Mac przejdź do „pęku kluczy” i poszukaj właśnie zainstalowanego certyfikatu. Jeśli nie masz pewności, który certyfikat jest prawidłowy, powinien rozpocząć się od „Apple Push IOS Push Services:”, a następnie identyfikatora pakietu aplikacji.
Krok 8: Rozwiń certyfikat, powinieneś zobaczyć klucz prywatny z nazwą lub nazwą firmy. Wybierz oba elementy za pomocą klawisza „Wybierz” na klawiaturze, kliknij prawym przyciskiem myszy (lub kliknij cmd, jeśli używasz myszy z jednym przyciskiem), wybierz „Eksportuj 2 elementy”, jak poniżej:
Następnie zapisz plik p12 o nazwie „pushcert.p12” na pulpicie - teraz zostaniesz poproszony o podanie hasła w celu jego ochrony, możesz albo kliknąć Enter, aby pominąć hasło, albo wprowadzić żądane hasło.
Krok 9: Teraz najtrudniejsza część - otwórz „Terminal” na komputerze Mac i uruchom następujące polecenia:
cd
cd Desktop
openssl pkcs12 -in pushcert.p12 -out pushcert.pem -nodes -clcerts
Krok 10: Usuń pushcert.p12 z pulpitu, aby uniknąć błędnego przesłania go do budowy własnego obszaru. Otwórz „Terminal” na komputerze Mac i uruchom następujące polecenia:
cd
cd Desktop
rm pushcert.p12
Krok 11 - NOWA AKTUALIZACJA AWS: Utwórz nową, pushcert.p12
aby przesłać do AWS SNS. Kliknij dwukrotnie nowy pushcert.pem
, a następnie wyeksportuj ten zaznaczony tylko na zielono.
Źródło: nowa aktualizacja AWS
Teraz pomyślnie utworzyłeś certyfikat Apple Push Notification Certificate (plik .p12)! Musisz później przesłać ten plik do naszego obszaru Zbuduj swój własny. :)
Dzisiaj jest o wiele prostsze rozwiązanie - pem . To narzędzie znacznie ułatwia życie.
Na przykład, aby wygenerować lub odnowić certyfikat powiadomienia wypychanego, wystarczy wpisać:
fastlane pem
i dzieje się to w niecałą minutę. Jeśli potrzebujesz certyfikatu piaskownicy, wprowadź:
fastlane pem --development
I to wszystko.
$ cd Desktop
$ openssl x509 -in aps_development.cer -inform der -out PushChatCert.pem
Apple zmieniło nazwę wydanego certyfikatu. Możesz teraz używać tego samego certyfikatu zarówno do programowania, jak i produkcji. Chociaż nadal możesz poprosić o certyfikat tylko do programowania, nie możesz już żądać certyfikatu tylko do produkcji.
jest to bardzo proste po wyeksportowaniu pliku Cert.p12 i key.p12, poniżej znajduje się polecenie generowania pliku .pem „apns”.
https://www.sslshopper.com/ssl-converter.html
command to create apns-dev.pem from Cert.pem and Key.pem
openssl rsa -in Key.pem -out apns-dev-key-noenc.pem
cat Cert.pem apns-dev-key-noenc.pem > apns-dev.pem
Powyższe polecenie jest przydatne zarówno dla Sandbox, jak i Production.
Zgodnie z rozwiązywaniem problemów z certyfikatami wypychanymi
Certyfikat SSL dostępny na koncie programu programisty Apple zawiera klucz publiczny, ale nie klucz prywatny. Klucz prywatny istnieje tylko na komputerze Mac, który utworzył żądanie podpisania certyfikatu przesłane do Apple. Zarówno klucz publiczny, jak i prywatny są niezbędne do wyeksportowania pliku PEM (Privacy Enhanced Mail).
Istnieje prawdopodobieństwo, że nie możesz wyeksportować działającego PEM z certyfikatu dostarczonego przez klienta, ponieważ nie masz klucza prywatnego. Certyfikat zawiera klucz publiczny, podczas gdy klucz prywatny prawdopodobnie istnieje tylko na komputerze Mac, który utworzył oryginalny CSR.
Możesz albo:
lub
Dzięki! na wszystkie powyższe odpowiedzi. Mam nadzieję, że masz plik .p12. Teraz otwórz terminal i wpisz następujące polecenie. Ustaw terminal na ścieżkę, w której umieściłeś plik .12.
$ openssl pkcs12 -in yourCertifcate.p12 -out pemAPNSCert.pem -nodes
Enter Import Password: <Just enter your certificate password>
MAC verified OK
Teraz tworzony jest plik .pem .
Sprawdź plik .pem Najpierw otwórz plik .pem w edytorze tekstu, aby wyświetlić jego zawartość. Treść certyfikatu powinna mieć format, jak pokazano poniżej. Upewnij się, że plik pem zawiera zarówno treść certyfikatu (od BEGIN CERTIFICATE do END CERTIFICATE), jak i klucz prywatny certyfikatu (od BEGIN PRIVATE KEY do END PRIVATE KEY):
> Bag Attributes
> friendlyName: Apple Push Services:<Bundle ID>
> localKeyID: <> subject=<>
> -----BEGIN CERTIFICATE-----
>
> <Certificate Content>
>
> -----END CERTIFICATE----- Bag Attributes
> friendlyName: <>
> localKeyID: <> Key Attributes: <No Attributes>
> -----BEGIN PRIVATE KEY-----
>
> <Certificate Private Key>
>
> -----END PRIVATE KEY-----
Ponadto sprawdzasz ważność certyfikatu, przechodząc do Dekodera certyfikatu SSLShopper i wklejając treść certyfikatu (od BEGIN CERTIFICATE do END CERTIFICATE), aby uzyskać wszystkie informacje o certyfikacie, jak pokazano poniżej: