Signaturmaterial je Projekt erfassen
Zertifikate, private Schlüssel und Build-Logs getrennt verwalten
Zertifikatsdateien lassen sich kopieren. Das heißt nicht, dass jeder Build darauf zugreifen können sollte. Behandeln Sie Signaturmaterial als eigenes Asset: Legen Sie fest, wer es importiert, in welchem Schlüsselbund es verwendet wird und wann es widerrufen oder erneuert werden muss.
Zertifikate und Profile
Speichern Sie Zertifikate, die zugehörigen privaten Schlüssel und Profile je Projekt. Prüfen Sie vor dem Import Zweck, Gültigkeitsdauer und geeignetes Target. Exportdateien mit privaten Schlüsseln gehören nicht ins Code-Repository.
Erstellen Sie bei Bedarf passwortgeschützte Exportdateien und übermitteln Sie das Passwort über einen separaten Kanal. Bewahren Sie Backups an einem vom Team verwalteten Ort auf – nicht ausschließlich auf dem Build-Rechner.
Separater Schlüsselbund für Builds
Hinterlegen Sie CI-Signaturidentitäten am besten in einem eigenen Schlüsselbund, getrennt von der interaktiven Nutzung. Richten Sie Entsperrung und Zugriffsrechte nach dem tatsächlichen Build-Bedarf ein. Gewähren Sie nicht aus Bequemlichkeit allen Prozessen Zugriff auf private Schlüssel.
Wenn ein automatisierter Vorgang den Schlüsselbund entsperren muss, lesen Sie das Passwort aus einer geschützten CI-Variable aus. Prüfen Sie die Signatur zunächst mit einem kontrollierten Build, bevor Sie den Aufgabenbereich des Runners erweitern.
Protokolle und Artefakte gezielt freigeben
Geben Sie Passwörter, Tokens und Passwörter für Signatur-Exporte nicht in Skripten aus. Deaktivieren Sie bei der Fehlersuche die Ausgabe expandierter Befehle für vertrauliche Schritte und prüfen Sie Logs vor dem Hochladen auf Zugangsdaten.
Legen Sie Speicherorte und Aufbewahrungsregeln für Archive, Exportpakete und Debug-Symbole getrennt fest. Ein abgeschlossener Build ist kein Backup. Prüfen Sie mindestens einmal, ob sich benötigte Artefakte aus dem Teamspeicher wiederherstellen lassen.
Signaturidentität prüfen, bevor Sie den Release-Build starten
Führen Sie unter dem vorgesehenen Build-Benutzer die folgende Abfrage aus, um zu prüfen, ob die erwartete Codesignaturidentität im Schlüsselbund vorhanden ist. Die Ausgabe dient der lokalen Kontrolle. Veröffentlichen Sie keine vollständigen Umgebungsinformationen.
security find-identity -v -p codesigning
Der Befehl listet nur Identitäten auf. Er importiert keine Zertifikate und konfiguriert keine Zugriffsrechte für den Schlüsselbund.