Ho provato e provato a generare un file .pem, ogni volta generando certificati dall'account del cliente e quindi generando il file .pem usando il terminale, ma è inutile. Qualcuno può dare una procedura dettagliata?
Ho provato e provato a generare un file .pem, ogni volta generando certificati dall'account del cliente e quindi generando il file .pem usando il terminale, ma è inutile. Qualcuno può dare una procedura dettagliata?
Risposte:
Per abilitare la notifica push per la tua app iOS, dovrai creare e caricare il certificato di notifica push Apple (file .pem) per consentirci di connetterci al server push Apple per tuo conto.
( Versione aggiornata con schermate aggiornate qui )
Passaggio 1: Accedi al portale di provisioning iOS, fai clic su "Certificati" nella barra di navigazione a sinistra. Quindi, fai clic sul pulsante "+".
Passaggio 2: selezionare l'opzione SSL (Produzione) del servizio di notifica push di Apple nella sezione Distribuzione, quindi fare clic sul pulsante "Continua".
Passaggio 3: selezionare l'ID app che si desidera utilizzare per l'app BYO (come creare un ID app), quindi fare clic su "Continua" per passare al passaggio successivo.
Passaggio 4: seguire i passaggi "Informazioni sulla creazione di una richiesta di firma certificato (CSR)" per creare una richiesta di firma certificato.
Per integrare le istruzioni fornite da Apple. Ecco alcuni degli screenshot aggiuntivi per aiutarti a completare i passaggi richiesti:
Passaggio 4 Schermata supplementare 1: vai all'Assistente certificato di accesso al portachiavi sul tuo Mac.
Passaggio 4 Schermata supplementare 2: compilare le informazioni sul certificato. Fai clic su Continua.
Passaggio 5: carica il file ".certSigningRequest" che viene generato nel passaggio 4, quindi fai clic sul pulsante "Genera".
Passaggio 6: fare clic su "Fine" per terminare la registrazione, la pagina del portale di provisioning di iOS verrà aggiornata come la seguente schermata:
Quindi fare clic sul pulsante "Download" per scaricare il certificato (file .cer) che hai creato proprio ora. - Fai doppio clic sul file scaricato per installare il certificato in Keychain Access sul tuo Mac.
Passaggio 7: sul Mac, vai su "Portachiavi", cerca il certificato che hai appena installato. Se non sei sicuro di quale certificato sia quello corretto, dovrebbe iniziare con "Servizi di produzione IOS Push di Apple:" seguito dall'ID bundle dell'app.
Passaggio 8: espandi il certificato, dovresti vedere la chiave privata con il tuo nome o il nome della tua azienda. Seleziona entrambi gli elementi utilizzando il tasto "Seleziona" sulla tastiera, fai clic con il pulsante destro del mouse (o fai clic su cmd se usi un mouse a pulsante singolo), scegli "Esporta 2 elementi", come di seguito:
Quindi salva il file p12 con il nome "pushcert.p12" sul desktop: ora ti verrà chiesto di inserire una password per proteggerla, puoi fare clic su Invio per saltare la password o inserire una password che desideri.
Passaggio 9: ora la parte più difficile: apri "Terminale" sul tuo Mac ed esegui i seguenti comandi:
cd
cd Desktop
openssl pkcs12 -in pushcert.p12 -out pushcert.pem -nodes -clcerts
Passaggio 10: rimuovere pushcert.p12 dal desktop per evitare di caricarlo erroneamente nell'area Build Your Own. Apri "Terminale" sul tuo Mac ed esegui i seguenti comandi:
cd
cd Desktop
rm pushcert.p12
Passaggio 11: NUOVO AGGIORNAMENTO AWS: crea nuovo pushcert.p12
per l'invio a AWS SNS. Fai doppio clic sul nuovo pushcert.pem
, quindi esporta quello evidenziato solo sul verde.
Credito: nuovo aggiornamento AWS
Ora hai creato con successo un certificato di notifica push Apple (file .p12)! In seguito dovrai caricare questo file nella nostra area Build Your Own. :)
Oggi esiste una soluzione molto più semplice: pem . Questo strumento semplifica la vita.
Ad esempio, per generare o rinnovare il certificato di notifica push basta inserire:
fastlane pem
ed è fatto in meno di un minuto. Se hai bisogno di un certificato sandbox, inserisci:
fastlane pem --development
E questo è tutto.
$ cd Desktop
$ openssl x509 -in aps_development.cer -inform der -out PushChatCert.pem
Apple ha modificato il nome del certificato emesso. Ora puoi utilizzare lo stesso certificato sia per lo sviluppo che per la produzione. Sebbene sia ancora possibile richiedere un certificato di solo sviluppo, non è più possibile richiedere un certificato di sola produzione.
è molto semplice dopo aver esportato Cert.p12 e key.p12, Di seguito troverai il comando per generare il file .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
Il comando sopra è utile sia per Sandbox che per la produzione.
In base alla risoluzione dei problemi relativi ai certificati push
Il certificato SSL disponibile nel tuo account del Programma per gli sviluppatori Apple contiene una chiave pubblica ma non una chiave privata. La chiave privata esiste solo sul Mac che ha creato la Richiesta di firma certificato caricata su Apple. Sono necessarie sia le chiavi pubbliche che quelle private per esportare il file PEM (Privacy Enhanced Mail).
Probabilmente il motivo per cui non è possibile esportare un PEM funzionante dal certificato fornito dal client è che non si dispone della chiave privata. Il certificato contiene la chiave pubblica, mentre la chiave privata esiste probabilmente solo sul Mac che ha creato il CSR originale.
Puoi:
o
Grazie! a tutte le risposte sopra. Spero che tu abbia un file .p12. Ora, apri il terminale scrivi il seguente comando. Impostare il terminale sul percorso in cui è stato inserito il file .12.
$ openssl pkcs12 -in yourCertifcate.p12 -out pemAPNSCert.pem -nodes
Enter Import Password: <Just enter your certificate password>
MAC verified OK
Ora viene generato il tuo file .pem .
Verifica del file .pem Per prima cosa, apri il .pem in un editor di testo per visualizzarne il contenuto. Il contenuto del certificato deve essere nel formato mostrato di seguito. Assicurarsi che il file pem contenga sia il contenuto del certificato (da INIZIO CERTIFICATO a FINE CERTIFICATO) sia la chiave privata del certificato (da INIZIO A CHIAVE PRIVATA a FINE A CHIAVE PRIVATA):
> 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-----
Inoltre, si controlla la validità del certificato andando su Decodificatore certificato SSLShopper e incollando il contenuto del certificato (da INIZIARE CERTIFICATO a FINE CERTIFICATO) per ottenere tutte le informazioni sul certificato come mostrato di seguito: