Apple Production Push SSL-Zertifikat im P12-Format kann nicht exportiert werden

172

Ich verwende Urban Airship in meinem Antrag auf Push-Benachrichtigung. Daher muss ich das Push-SSL-Zertifikat vom Apple-Entwicklerportal herunterladen. Nach dem Herunterladen habe ich das beim Schlüsselbundzugriff hinzugefügt. Für das Zertifikat wurde jedoch kein privater Schlüssel erstellt. Als ich versuchte, mit der rechten Maustaste auf das Zertifikat zu klicken und es zu exportieren, konnte ich es nicht als .p12- Datei exportieren, da die .p12- Dateierweiterung beim Speichern deaktiviert war. Ich kann die Screenshots hier nicht anhängen, da der Ruf geringer ist.

Jemand sagt mir bitte, wo das Problem hier ist. Wie soll ich das machen

Rashmi Ranjan mallick
quelle

Antworten:

573

Es stellt sich heraus, dass Sie im linken Bereich nur "Meine Zertifikate" auswählen müssen, um die Option .p12 zu aktivieren.

Matt Privman
quelle
32
Da kein privater Schlüssel verfügbar ist, wird das Zertifikat anscheinend nicht unter "Meine Zertifikate" aufgeführt. Es ist nur unter "Zertifikate".
Commonpike
3
Manchmal müssen Sie die Schlüsselbund-App für Ihr Zertifikat neu starten, damit sie angezeigt wird.
Borzh
1
Gleiches Problem wie @commonpike, nicht in der Liste. Die Antwort von jdev112388 ist korrekt. Es sieht so aus, als hätte Apple die Dinge wieder geändert
Joel
6
Eine andere Sache: Sie müssen generieren, wenn von derselben Maschine. Tatsächlich müssen Sie die Zertifikatsignierungsanforderung von derselben KEYCHAIN ​​generieren!
Greg
2
Wenn dies kein Fehler ist, ist das die seltsamste Funktion, von der ich je gehört habe ...
quemeful
96

In meinem Fall habe ich die CER-Datei zur Option "System" und nicht zur Option "Login" gemacht. dann verschiebe ich die .cer-Datei von der Option "System" in die Option "Login", drücke dann "Meine Zertifikate" und exportiere sie .p12 ist in Ordnung.

frank
quelle
8
Seltsam, aber wahr
ED-209
1
WTF! Absolut verrückt, hat aber auch für mich funktioniert. Außerdem werden der Dropdown-Pfeil und der private Schlüssel angezeigt. Vielen Dank!
AlbertoC
Wirklich besorgt, was ab 2 Stunden passiert !!. Du hast mich gerettet. Vielen Dank.
Kalpa
Ich habe das gleiche getan und konnte .p12 exportieren. Vielen Dank. Ich dachte daran, es zu widerrufen und es von anderen Maschinen aus zu tun, aber es funktioniert.
Manish Nahar
Bei mir hat es nicht funktioniert. Ich kann immer noch keine Zertifikate im Abschnitt "Meine Zertifikate" sehen. Ich habe eine komplett neue certificatesigningrequest-Datei erstellt. Das wurde auf das Apple-Entwicklerportal hochgeladen, um das APNS-Zertifikat herunterzuladen. Ich habe darauf doppelt geklickt, aber es wird nur im Abschnitt "Zertifikate" angezeigt. Irgendwelche Ideen?
Nazar Medeiros
29

Apple speichert den privaten Schlüssel, mit dem Sie Ihre Zertifikate erstellt haben, nicht. Sie müssen bereits eine Kopie davon auf Ihrem Computer haben.

Es hört sich so an, als hätte entweder jemand anderes das Push-Zertifikat angefordert, das Sie herunterladen möchten, oder Sie haben es auf einem anderen Computer angefordert. Wenn Sie den privaten Schlüssel nicht finden können, müssen Sie eine neue Zertifikatsanforderung erstellen und über das Entwicklerportal hochladen.

lxt
quelle
Aber eines ... Wenn ich den privaten Schlüssel trotzdem bekomme, wie kann ich ihn in das vorhandene Push-Zertifikat integrieren?
Rashmi Ranjan Mallick
1
Sie sollten fragen, wer den privaten Schlüssel hat, um ihn zu exportieren und an Sie zu senden. Sie können es dann zu Ihrem Schlüsselbund hinzufügen, mit dem Sie mit Ihrem Push-Zertifikat die p12-Datei erstellen können.
Lxt
Das Zertifikat wird immer noch nicht in "Meine Zertifikate" angezeigt, wenn ich die Anforderung von Anfang an vollständig auf demselben MacBook ausführe.
Nazar Medeiros
16

Um als p12 zu exportieren, müssen Sie entweder das Zertifikat von Ihrem Computer generieren oder den Schlüssel haben, mit dem es auf Ihrem Computer generiert wurde.

Um sicherzustellen, dass dies funktioniert:

  1. Melden Sie sich beim Apple Dev Center an

  2. Wechseln Sie zum Bereitstellungsportal oder zu Zertifikaten, Kennungen und Profilen

  3. Gehen Sie zu Zertifikate und erstellen Sie einen Apple Push Notification Service SSL. Von nun an werden Sie durch den Prozess der Zertifikatserstellung geführt.

  4. Nachdem Sie das generierte Zertifikat heruntergeladen haben, installieren Sie es in Ihrem Schlüsselbund (doppelklicken Sie auf die Zertifikatdatei oder ziehen Sie sie per Drag & Drop in das Schlüsselbundfenster.

  5. Wählen Sie dann im linken Bereich "Zertifikate" aus. Klicken Sie mit der rechten Maustaste auf das Zertifikat, das Sie exportieren möchten, und die Option p12 wird angezeigt.

Hinweis: Es ist nur vorhanden, wenn Sie das Zertifikat von Ihrem Computer generiert haben

jcity
quelle
1
Der Schlüssel hier ist, dass Sie es von Ihrem Computer generieren. Tatsächlich müssen Sie die Zertifikatsignierungsanforderung von derselben KEYCHAIN ​​generieren!
Greg
Und der Zertifikatsassistent verwendet immer den Schlüsselbund, der beim Erstellen der CSR als Standard festgelegt wurde. Wenn Sie möchten, dass die Schlüssel in einem bestimmten Schlüsselbund generiert werden, legen Sie diesen als Standard fest, bevor Sie mit dem CSR-Prozess beginnen. Sobald der CSR erstellt ist, können Sie ihn zurücksetzen. Wenn Sie das von Apple heruntergeladene Zertifikat importieren, importieren Sie es in den Schlüsselbund mit dem Schlüsselpaar.
quellish
10

Anstatt mit der rechten Maustaste auf die Hauptzertifikatszeile in Keychain Access Exportzu klicken und auszuwählen , musste ich auf den Dropdown-Pfeil neben dem Zertifikat klicken, das ich exportieren wollte, und dann mit der rechten Maustaste auf den Eintrag darunter klicken und dann auswählen Export. Dann wählen Sie tatsächlich den privaten Schlüsselteil anstelle des öffentlichen Schlüsselteils aus.

hvaughan3
quelle
1
Damit der Pfeil sichtbar war, musste die "Kategorie" auf "Zertifikate" anstatt auf "Alle Artikel" gesetzt sein
Dakusan
genau. Rechtsklick auf Zertifikat selbst erzeugt keine "Export" -Option im Kontextmenü
Konstantin Salavatov
9

Stellen Sie nicht nur sicher, dass das Zertifikat aufgrund einer Zertifikatanforderung vom Schlüsselbundzugriff -> Zertifikatassistent auf demselben Computer ausgestellt wurde, sondern stellen Sie auch sicher, dass die empfangene CER-Datei im richtigen Schlüsselbund installiert ist.

Der beste Weg, dies zu tun, besteht darin, den entsprechenden Schlüsselbund unter den linken Schlüsselanhänger auszuwählen, höchstwahrscheinlich "Anmelden", sicherzustellen, dass "Meine Zertifikate" unter "Kategorie" ausgewählt ist, und dann die CER-Datei in den Hauptbereich der Dateiliste zu ziehen und dort abzulegen.

Gavin
quelle
Vielen Dank an @Gavin für die Erwähnung "Wählen Sie den entsprechenden Schlüsselbund". Ich habe nur auf die Cer-Datei doppelklickt und sie wurde immer im System-Schlüsselbund verwendet.
Hochspannung
Bei mir hat es nicht funktioniert. Ich kann immer noch keine Zertifikate im Abschnitt "Meine Zertifikate" sehen. Ich habe eine komplett neue certificatesigningrequest-Datei erstellt. Das wurde auf das Apple-Entwicklerportal hochgeladen, um das APNS-Zertifikat herunterzuladen. Ich habe darauf doppelt geklickt, aber es wird nur im Abschnitt "Zertifikate" angezeigt. Irgendwelche Ideen?
Nazar Medeiros
4

Stellen Sie sicher, dass Sie einen privaten Schlüssel und keinen öffentlichen Schlüssel auswählen, da Sie wahrscheinlich beide Typen in der Liste haben.

user2387149
quelle
0

Mit dem Onesignal Provisionator-Tool können Sie ein Push-SSL-Zertifikat erstellen. Es ist kostenlos und erledigt den ganzen verwirrenden Teil für Sie.

Es wird Ihre aktuelle Version widerrufen, wenn Sie sie erstellen. Daher ist es wichtig, dass Sie beim Hochladen an den entsprechenden Ort schnell vorgehen, wenn Sie live sind.

Dies funktionierte bei OneSignal-Push-Benachrichtigungen bei mir, aber ich sehe keinen Grund, warum es bei anderen Push-Benachrichtigungen nicht funktioniert.

Bäume_sind_groß
quelle