2012-06-26 2 views
9

Ho un'app esistente che ho creato e di recente ho configurato notifiche push.La richiesta di firma del certificato di distribuzione delle notifiche push Apple deve essere uguale a quella utilizzata per il certificato di distribuzione per firmare l'app?

Durante la configurazione, viene richiesto di caricare una richiesta di firma del certificato (CSR). Non ho più il CSR originale che ho usato per pubblicare la mia app. È questo il CSR che devo caricare nella configurazione della notifica push per ricevere il mio certificato di notifica push?

Ho il mio certificato di distribuzione con chiave privata disponibile.

Ho provato a creare un nuovo CSR da caricare nel portale per sviluppatori per recuperare il mio certificato di notifica push.

Quando unisco questo file con la mia chiave (file p12) privato e si tenta di connettersi al server di notifica push ottengo il seguente errore:

errore di impostazione chiave 42600 privati: errore: 0B080074: routine certificato X509 : X509_check_private_key: valori chiave non corrispondente: /SourceCache/OpenSSL098/OpenSSL098-44/src/crypto/x509/x509_cmp.c: 406:

sta succedendo questo a causa del nuovo CSR che ho usato per creare il CERT notifica push?

risposta

27

è perfetto per generare un nuovo CSR. Hai solo la chiave privata sbagliata nel tuo file .p12.

Generare il certificato push, quindi scaricarlo da Apple e fare doppio clic per aggiungerlo al Portachiavi.

Aprire l'accesso Portachiavi, trovare il Certificato Push in "I miei certificati" ed espanderlo. Dovresti vedere una chiave privata sotto, quella giusta per questo certificato. Seleziona sia il certificato che la sua chiave privata, fai clic con il tasto destro e seleziona "Esporta 2 elementi ...".

Con il file .p12 risultante, tutto dovrebbe funzionare correttamente.

+0

Ottimo, ha funzionato per me. Non so perché, ma ho anche ricevuto il messaggio "Errore nell'impostazione della chiave privata", che è scomparso dopo aver inserito il CER nel portachiavi, POI salvato la chiave privata come P12. Grazie. –