iOSAppleXcodeApp StoreCode Signing

Apple Distribution-Zertifikat erstellen – Schritt-für-Schritt-Anleitung

Sloth255
Sloth255
·6 min read·1,195 words

Zum Vertrieb einer iOS-App im App Store ist ein Apple Distribution-Zertifikat erforderlich. Es wird für die Code-Signierung verwendet und ermöglicht Apple zu verifizieren, dass die App von einem legitimen Entwickler stammt.

Dieser Artikel führt Sie Schritt für Schritt durch die Erstellung des Zertifikats mithilfe des Apple Developer Program-Dashboards.


Voraussetzungen

Stellen Sie vor der Erstellung des Zertifikats sicher, dass folgendes zutrifft:

  • Anmeldung im Apple Developer Program (jährlich $99 USD)
  • Anmeldung mit einer Apple ID mit Admin- oder Account Holder-Berechtigung
  • Xcode (neueste Version empfohlen) auf dem Mac installiert
  • Schlüsselbundverwaltung (integrierte macOS-App) ist verfügbar

Schritt 1 — CSR (Certificate Signing Request) erstellen

Eine CSR (Certificate Signing Request) ist die Datei, die Sie bei Apple einreichen, um ein Zertifikat anzufordern. Sie wird mit der Schlüsselbundverwaltung erstellt.

  1. Schlüsselbundverwaltung öffnen (im Spotlight nach „Schlüsselbund" suchen)
  2. In der Menüleiste: SchlüsselbundverwaltungZertifikatsassistentZertifikat einer Zertifizierungsinstanz anfordern...

Zertifikatsassistent in der Schlüsselbundverwaltung

  1. Folgende Felder ausfüllen:

    Feld Eingabe
    E-Mail des Benutzers Bei der Apple ID registrierte E-Mail-Adresse
    Allgemeiner Name Aussagekräftiger Name (z. B. MyApp Distribution)
    E-Mail der Zertifizierungsinstanz Leer lassen
    Anfrage ist „Auf Disk gespeichert" auswählen

Dialogfeld zur Auswahl des CSR-Speicherorts

  1. Auf „Fortfahren" klicken und die CSR-Datei (.certSigningRequest) an einem beliebigen Ort speichern.

Schritt 2 — Neues Zertifikat im Apple Developer Portal erstellen

Rufen Sie die Apple Developer-Website auf, um das Zertifikat auszustellen.

URL:
developer.apple.com › Account › Certificates, IDs & Profiles › Certificates

  1. Auf die +-Schaltfläche (Hinzufügen) oben rechts klicken
    Apple Developer Certificates-Liste

  2. Im Abschnitt Software Apple Distribution auswählen und auf „Continue" klicken
    Auswahlbildschirm für Apple Distribution

  3. Auf dem Bildschirm „Upload a Certificate Signing Request" die in Schritt 1 erstellte .certSigningRequest-Datei hochladen

  4. Auf „Continue" → „Download" klicken, um die Zertifikatsdatei (.cer) herunterzuladen
    Zertifikat herunterladen


Schritt 3 — Zertifikat herunterladen und im Schlüsselbund installieren

  1. Die heruntergeladene distribution.cer-Datei doppelklicken
  2. Im Dialog „Zum Schlüsselbund hinzufügen?" auf „Hinzufügen" klicken
  3. Schlüsselbundverwaltung öffnen und die Kategorie „Zertifikate" im Anmelde-Schlüsselbund prüfen
  4. Wenn Apple Distribution: [Ihr Name/Team] (XXXXXXXXXX) angezeigt wird, war die Installation erfolgreich

Klicken Sie auf die ▶ Erweiterungsschaltfläche links neben dem Zertifikat, um zu prüfen, ob ein privater Schlüssel (🔑) angezeigt wird. Fehlt der private Schlüssel, wurde die CSR auf einem anderen Mac erstellt oder der private Schlüssel ist nicht im aktuellen Schlüsselbund vorhanden.


Schritt 4 — Zertifikat in Xcode überprüfen

Ort:
Xcode › Settings... › Accounts › Manage Certificates...

  1. Die gewünschte Apple ID auswählen und auf „Manage Certificates..." klicken
  2. Prüfen, ob ein Apple Distribution-Eintrag in der Liste erscheint
  3. Wenn Sie Automatically manage signing im Tab Signing & Capabilities Ihres Projekts deaktivieren, können Sie das Distribution-Zertifikat manuell auswählen.

Beziehung zwischen Zertifikaten und Provisioning Profiles

Apples Signierungssystem besteht aus drei Elementen:

  • Zertifikat (Certificate): Weist nach, welcher Entwickler oder welches Team die App signiert hat
  • App ID: Identifiziert, um welche App es sich handelt
  • Provisioning Profile: Definiert, welche Kombination aus Zertifikat, App ID, Geräten und Funktionen zur Ausführung oder Verteilung der App berechtigt ist

Kurz gesagt: Das Zertifikat identifiziert den Unterzeichner, die App ID identifiziert die App, und das Provisioning Profile ist ein Satz von Nutzungsbedingungen. Ein Zertifikat allein reicht nicht aus, um eine App zu verteilen — es ist auch ein Provisioning Profile erforderlich.


Unterschied zum Apple Development-Zertifikat

Merkmal Apple Development Apple Distribution
Eigentümer Einzelperson (Mac-Name im Zertifikatnamen) Team (nur Account Holder / Admin)
Nutzung auf mehreren Macs ✅ Möglich (via .p12) ✅ Möglich (Team-Sharing via .p12)
Zweck On-Device-Debugging und -Tests App Store / Ad Hoc-Verteilung
TestFlight-Verteilung ❌ Nicht möglich ✅ Möglich
Xcode-Signierung Debug-Schema Release-Schema
Maximale Anzahl 2 pro Team 3 pro Team
Gültigkeitsdauer 1 Jahr 1 Jahr

Apple Development-Zertifikat vs. persönliches Konto

  • Apple Development-Zertifikat: Offizielles Entwicklungszertifikat für Teams im Apple Developer Program
  • Personal Team: On-Device-Tests via Xcode ohne Developer Program-Mitgliedschaft
Merkmal Personal Team (kostenlos) Apple Development (Developer Program)
Voraussetzung Nur Apple Account Developer Program-Mitgliedschaft erforderlich
Hauptzweck Persönliche On-Device-Tests Team-Entwicklung / kontinuierliche Signierung
Verteilung ❌ Nicht möglich ❌ Nicht möglich
TestFlight / App Store Connect ❌ Nicht möglich ❌ Nicht möglich
Profil-Gültigkeit 7 Tage In der Regel 1 Jahr
Registrierbare App IDs / Geräte Eingeschränkt Im Rahmen des Developer Programs
Erweiterte Funktionen Eingeschränkt Mehr Funktionen verfügbar

Verteilungsmethoden-Übersicht

Verteilungsmethode Zertifikat Provisioning Profile Hinweis
On-Device-Debugging Apple Development Development Nur auf registrierten Geräten
TestFlight Apple Distribution App Store Connect Distribution Upload zu App Store Connect
App Store-Veröffentlichung Apple Distribution App Store Connect Distribution Nach Genehmigung öffentlich
Ad Hoc-Verteilung Apple Distribution Ad Hoc Nur Geräte mit registrierten UDIDs
Enterprise / In-House Apple Enterprise Distribution In-House Erfordert Apple Developer Enterprise Program

Sowohl TestFlight als auch App Store-Veröffentlichungen verwenden das Apple Distribution-Zertifikat.


Automatische vs. manuelle Signierung

In den meisten Fällen wird empfohlen, Automatically manage signing in Xcode zu aktivieren.

Erwägen Sie manuelle Signierung in folgenden Situationen:

  • Strenge Kontrolle über mehrere Targets oder Bundle Identifier
  • Explizite Verwaltung von Signierungsassets in CI/CD
  • Tools wie Fastlane Match zur zentralen Verwaltung
  • Automatisch generierte Profile ermöglichen keine gewünschte Kontrolle

Häufige Fehler und Lösungen

🔴 „Kein privater Schlüssel für das Zertifikat gefunden"

  • .cer auf einem anderen Mac installiert: Privater Schlüssel nur im Schlüsselbund des CSR-Macs
  • Mac migriert oder ersetzt: Migrationsassistent hat den privaten Schlüssel nicht korrekt verschoben
  • Schlüsselbund zurückgesetzt: Privater Schlüssel geht beim Reset verloren
  • .cer erneut vom Portal heruntergeladen: Auf anderem Mac als CSR-Erstellung
# .p12-Export-Schritte (Schlüsselbundverwaltung)
# 1. Schlüsselbundverwaltung öffnen
# 2. Zielzertifikat rechtsklicken
#    → „'Apple Distribution: ...' exportieren" auswählen
# 3. Kennwort festlegen und .p12-Datei speichern
# 4. Auf dem anderen Mac per Doppelklick importieren

🔴 Abgelaufenes Zertifikat

Apple Distribution-Zertifikate sind 1 Jahr gültig. Erneuern Sie in dieser Reihenfolge:

  1. Neues Apple Distribution-Zertifikat erstellen
  2. Distribution-Provisioning-Profile bei Bedarf neu generieren
  3. Zertifikate und Profile in Xcode oder CI/CD aktualisieren
  4. Neues .p12 an Teammitglieder verteilen

🔴 Fehler „Maximum number of certificates generated"

Maximal 3 Distribution-Zertifikate sind erlaubt. Nicht benötigte löschen, dann neu erstellen.


Zusammenfassung

  1. CSR (.certSigningRequest) mit der Schlüsselbundverwaltung generieren
  2. Neues Apple Distribution-Zertifikat auf developer.apple.com erstellen und CSR hochladen
  3. Die heruntergeladene .cer-Datei per Doppelklick in den Schlüsselbund installieren
  4. In den Xcode Accounts-Einstellungen überprüfen, ob das Zertifikat erkannt wird

Für die Teamentwicklung sollten Sie sichere .p12-Freigabemethoden oder Automatisierungstools wie Fastlane Match in Betracht ziehen.