Es gibt Mails von Apple, die man zweimal lesen muss. Diese hier beginnt mit „Your team holds one or more Developer ID certificates issued by the original Developer ID Certification Authority (Sub-CA)“ und wird danach nicht eingängiger. Die Kurzfassung: Am 1. Februar 2027 läuft eine Zertifizierungsstelle ab, und alles, was sie ausgestellt hat, hört an diesem Tag auf zu funktionieren.
Ich habe die Mail auseinandergenommen und das Zertifikat erneuert. Hier steht, was sie bedeutet und was zu tun ist.
Was Apple da eigentlich sagt
Ein Developer-ID-Zertifikat braucht nur, wer Mac-Software außerhalb des Mac App Store verteilt, zum Beispiel als Download von der eigenen Website. Mit dem Zertifikat wird die Software signiert, damit macOS sie ohne Warnung startet.
Ausgestellt werden diese Zertifikate nicht von Apple direkt, sondern von einer Zwischenstelle, der „Developer ID Certification Authority“. Die ursprüngliche Zwischenstelle läuft am 1. Februar 2027 ab. Es gibt längst eine Nachfolgerin mit dem Zusatz „G2“, sie gilt bis 2031. Wer noch ein Zertifikat der alten Stelle hat, braucht ein neues von der neuen.
Reine App-Store-Apps und iOS-Apps sind nicht betroffen. Wer gar keine Mac-Software an Apples Store vorbei verteilt, kann die Mail abheften.
Was eilt und was nicht
Das ist der wichtigste Teil der Mail, und er steht ganz unten.
Installer-Pakete (.pkg) eilen. Pakete, die mit einem alten Zertifikat signiert sind, lassen sich ab dem 1. Februar 2027 nicht mehr installieren. Sie müssen vorher mit dem neuen Zertifikat neu signiert und ausgetauscht werden.
Apps eilen nicht. Bereits signierte und notarisierte Mac-Apps mit sicherem Zeitstempel laufen weiter. Erst das nächste Update muss mit dem neuen Zertifikat signiert werden.
Schritt 1: Nachsehen, ob man betroffen ist
Im Developer-Konto unter Certificates, Identifiers & Profiles stehen alle Zertifikate mit Ablaufdatum. Entscheidend sind die vom Typ „Developer ID Application“ und „Developer ID Installer“, die am oder vor dem 1. Februar 2027 ablaufen. Woran sich erkennen lässt, von welcher Stelle ein Zertifikat stammt, erklärt Apple auf der Hilfeseite Replacing Developer ID certificates issued from the previous Sub-CA.
Schritt 2: Die Zertifikatsanforderung erzeugen
Für ein neues Zertifikat will Apple eine Anforderungsdatei, kurz CSR. Die erzeugt der Mac selbst:
- Schlüsselbundverwaltung öffnen.
- In der Menüleiste: Schlüsselbundverwaltung → Zertifikatsassistent → „Zertifikat einer Zertifizierungsinstanz anfordern…“.
- Die eigene E-Mail-Adresse und den eigenen Namen eintragen.
- Unter „Anfrage ist:“ den Punkt „Auf der Festplatte sichern“ wählen.
- Auf „Fortfahren“ klicken und die Datei speichern.
Schritt 3: Das neue Zertifikat erstellen
Developer-ID-Zertifikate kann nur der Account Holder des Teams anlegen.
- Im Developer-Konto bei den Zertifikaten auf das Plus klicken.
- Den Typ wählen: „Developer ID Application“ für Apps, „Developer ID Installer“ für .pkg-Pakete. Wer beides verteilt, braucht beide.
- Bei „Developer ID Certificate Intermediary“ G2 Sub-CA auswählen. Das ist die Stelle, an der man nicht danebenklicken darf: Die andere Option liefert laut Apple womöglich wieder ein Zertifikat, das 2027 abläuft.
- Die CSR-Datei hochladen und das Zertifikat herunterladen.
Wer noch mit Xcode 11.4 oder älter arbeitet, soll laut Apple vorher aktualisieren.
Schritt 4: Installieren und prüfen
Ein Doppelklick auf die heruntergeladene Datei legt das Zertifikat im Schlüsselbund ab. Unter „Meine Zertifikate“ sollte es danach mit aufklappbarem privatem Schlüssel stehen. Fehlt der Schlüssel, wurde die CSR auf einem anderen Mac erzeugt.
Im Terminal zeigt dieser Befehl alle Signatur-Identitäten:
security find-identity -v -p codesigning
Solange das alte und das neue Zertifikat nebeneinander liegen, tragen beide denselben Namen. In Build-Skripten hilft es dann, statt des Namens den Hash des neuen Zertifikats anzugeben. Zeigt der Schlüsselbund das Zertifikat als nicht vertrauenswürdig an, fehlt das Zwischenzertifikat „Developer ID – G2“. Es liegt auf Apples Seite zur Certificate Authority.
Schritt 5: Neu signieren
Für .pkg-Pakete:
productsign --sign "Developer ID Installer: Name (TEAMID)" alt.pkg neu.pkg
xcrun notarytool submit neu.pkg --keychain-profile "PROFIL" --wait
xcrun stapler staple neu.pkg
Danach die Download-Dateien austauschen. Für Apps reicht es, das neue Zertifikat beim nächsten Update zu verwenden. Xcode nimmt es bei automatischer Signierung von selbst. Wer in einer CI signiert, exportiert Zertifikat und Schlüssel als .p12 und hinterlegt beides dort neu.
Drei Dinge zum Merken
Nicht widerrufen. Das alte Zertifikat läuft von selbst aus. Wer es vorher widerruft, riskiert, dass bereits verteilte Software nicht mehr startet.
Der Kalender gehört dazu. Die neue Zertifizierungsstelle gilt bis 2031, die von ihr ausgestellten Zertifikate laufen laut Apples Mail aber jährlich ab und wollen jedes Jahr erneuert werden.
Es ist kleiner, als die Mail klingt. Eine Anforderungsdatei, ein Zertifikat, ein Auswahlpunkt namens G2. In ein paar Minuten hat man das erledigt.

