Ich habe das folgende Problem, für das ich nirgendwo eine Lösung finden konnte. Grundsätzlich haben wir ein Unternehmensentwicklerkonto (kein Unternehmen). Um unsere App einzureichen, habe ich unseren Teamleiter gebeten, mir das Verteilungszertifikat zu senden und ein Verteilungsbereitstellungsprofil zu erstellen und mir zu senden.
Mit dem Entwicklerprofil funktioniert alles gut, aber als ich das Zertifikat und das Bereitstellungsprofil installiert habe, habe ich weder das Verteilungsprofil auf Xcode gesehen, noch habe ich einen privaten Schlüssel unter dem dist-Zertifikat im Schlüsselbund.
Weiß jemand, wie man das löst? Ich habe an verschiedenen Stellen gelesen, dass ich das Zertifikat widerrufen und ein neues erstellen muss, aber das kann ich nicht wirklich, da wir eine Reihe von Apps im Unternehmen haben und ich es nicht für alle widerrufen kann.
Antworten:
Ahh das ist ein häufiges Problem. Die Lösung ist einfach:
Wer die Entwickleranmeldeinformationen ursprünglich erstellt hat, muss zum Schlüsselbund auf seinem Computer gehen und mit der rechten Maustaste auf die Schlüssel für privat und öffentlich klicken und den Schlüssel in eine Datei exportieren. Dann laden Sie diese Datei einfach auf Ihren Computer herunter und öffnen sie. Sie wird dann Ihrem Schlüsselbund hinzugefügt.
Sie benötigen sowohl den privaten Schlüssel (PEM-Datei) als auch das Zertifikat für Ihre Bereitstellungsprofile.
quelle
Solange Sie noch Zugriff auf den Mac haben, mit dem das ursprüngliche Distributionszertifikat erstellt wurde, ist dies sehr einfach.
Verwenden Sie einfach die Keychain Access-Anwendung dieses Mac, um sowohl das Zertifikat als auch den privaten Schlüssel zu exportieren. Wählen Sie beide mit Umschalt oder Befehl aus und klicken Sie mit der rechten Maustaste, um sie in eine .p12-Datei zu exportieren.
Hängte einen Screenshot an, um es sehr deutlich zu machen.
Importieren Sie auf Ihrem Mac diese .p12-Datei und Sie können loslegen (stellen Sie einfach sicher, dass Sie ein gültiges Bereitstellungsprofil haben).
quelle
Wenn Sie keinen Zugriff mehr auf diesen privaten Schlüssel haben, können Sie die Antworten anderer Benutzer ganz einfach wieder in Betrieb nehmen:
quelle
Löschen Sie die vorhandene Datei aus KeyChain, rufen Sie die P12-Datei ab und fügen Sie sie Ihrem Mac hinzu, von dem aus das Zertifikat erstellt wurde.
Um .p12 vom Quell-Mac zu erhalten, gehen Sie zu KeyChain, erweitern Sie das Zertifikat, wählen Sie beide aus und exportieren Sie 2 Elemente. Dadurch wird die P12-Datei an Ihrem Speicherort gespeichert:
quelle
In meinem Fall habe ich alle privaten Schlüssel in meinem Schlüsselbund verloren, neue wurden korrekt importiert, aber der private Schlüssel wird nicht angezeigt. Das einzige, was geholfen hat, war das Generieren einer neuen CertificateSigningRequest
quelle
Nachdem Sie einen Mac geändert haben, der nicht der Ursprungszertifikat ist, der das Verteilungszertifikat erstellt hat, fehlt Ihnen der private Schlüssel. Löschen Sie einfach das Ursprungszertifikat und erstellen Sie ein neues, das für mich funktioniert ~
quelle
Wenn ich versuche, iOS Build hochzuladen, um den Flug zu testen, wurde ein Fehler angezeigt.
"Missing privacy key"
.Nur 2 Schritte, um diesen Fehler zu beheben.
Mein Problem wurde behoben (ich verwende Xcode 9.4.1).
Bitte überprüfen Sie, Xcode erstellt neues Zertifikat.
quelle
Für Personen, die Angst haben, das AppStore-Verteilungszertifikat neu zu erstellen, heißt es in der Apple- Dokumentation :
Es betrifft jedoch Apps für das Apple Developer Enterprise- Ökosystem.
quelle
Über Menü> Visual Studio (Mac)> Einstellungen> Veröffentlichen> Apple Developer Accounts> [Wählen Sie Ihre Apple-ID aus]> Details anzeigen> Zertifikat erstellen
Um nicht verwendete / ungültige Zertifikate zu löschen, gehen Sie zur Website: https://developer.apple.com/account/resources/certificates/list
Löschen Sie dort unerwünschte Zertifikate
Als Nächstes erstellen Sie eine App-ID (Bezeichner) und gehen zur Website:
https://developer.apple.com/account/resources/identifiers/list
Wechseln Sie als Nächstes zur Website, um Bereitstellungsprofile zu erstellen:
https://developer.apple.com/account/resources/profiles/add
Verwenden Sie das Zertifikat, um eine Bindung mit Ihrer App-ID herzustellen.
Als Nächstes müssen Sie die Profile herunterladen:
Auf Ihrem Mac> Im Menü> Visual Studio (Mac)> Einstellungen> Veröffentlichen> Apple-Entwicklerkonten> [Wählen Sie Ihre Apple-ID aus]> Details anzeigen> Alle Profile herunterladen
quelle
Ich habe auf der Entwickler-Website von Apple auf dieses Zertifikat zugegriffen und es nach dem Herunterladen geöffnet. Ebenso wurde beim Öffnen ein kleines Fenster angezeigt, in dem ich gefragt wurde, ob ich das Zertifikat zum Schlüsselbund hinzufügen möchte. Tippen Sie einfach auf "Hinzufügen" und der Fehler "Fehlender privater Schlüssel" war verschwunden.
quelle
Ich bin in diese Situation geraten ("Fehlender privater Schlüssel"), nachdem Xcode kein neues Verteilungszertifikat erstellen konnte - ein unbekannter Fehler ist aufgetreten.
Dann bemühte ich mich, den privaten Schlüssel zu erhalten oder ein neues Zertifikat zu generieren. Vom Zertifikatmanager in Xcode habe ich seltsame Fehler wie "Die eingegebene Passphrase ist falsch" erhalten. Aber es hat mich nicht einmal nach einer Passphrase gefragt.
Was mir geholfen hat war:
Danach konnte Xcode ein neues Verteilungszertifikat erstellen und es fehlte kein privater Schlüssel.
Lektion gelernt: Starten Sie Ihren Mac genauso neu wie Windows;)
quelle
Überprüfen Sie, ob Sie Login verwenden, um die Zertifikate hinzuzufügen. Wenn Sie das System oben links einchecken, können wir es nicht sehen.
Ziehen Sie die .cer-Datei per Drag & Drop in die Anmeldung und überprüfen Sie, ob Sie den privaten Schlüssel erhalten können oder nicht.
quelle
Nur um etwas Licht ins Dunkel zu bringen.
Nachdem ich mein p12-Zertifikat aus dem Schlüsselbund gelöscht habe. Ich habe mein eigenes Zertifikat vom Apple-Entwicklerportal erneut heruntergeladen.
Ich konnte nur das Zertifikat herunterladen. Zum Signieren benötigen Sie jedoch auch den privaten Schlüssel. Also Sie entweder:
Exportieren Sie sowohl den privaten Schlüssel als auch das Zertifikat aus dem Schlüsselbund, um es zu erhalten.
Laden Sie eine Zertifikatsignierungsanforderung hoch und generieren Sie neue Zertifikate
Dieses Zertifikat selbst hat keinen Wert für Signaturzwecke. Ich vermute, dass der private Schlüssel vom Schlüsselbund erstellt wird, sobald Sie ein Zertifikat von einer Zertifizierungsstelle anfordern, aber erst angezeigt wird, wenn Sie das Bindungszertifikat hinzufügen.
quelle