Anmeldeinformationen verwalten
Einen Setup-Befehl mit den Installationsanweisungen und der vollständigen Markdown-Anleitung für diesen Plugin erstellen.
Verwalten Sie Ihre iOS- und Android-Build-Zugriffsberechtigungen lokal für bequeme Cloud-Builds.
Übersicht
Überschrift „Übersicht“Capgo CLI ermöglicht Ihnen, die Build-Zugriffsberechtigungen lokal auf Ihrem Computer im .capgo-credentials Capgo-Ordner zu speichern. Wenn Sie einen Build ausführen, werden diese Zugriffsberechtigungen automatisch verwendet und sicher an Capgo's Build-Server übermittelt.
Befehle
Abschnitt „Befehle“Sicherheitsdaten speichern
Abschnitt „Sicherheitsdaten speichern“Speichern Sie Ihre Build-Sicherheitsdaten lokal für automatischen Einsatz:
npx @capgo/cli build credentials save --platform <ios|android> [options]Sicherheitsdaten aktualisieren
Abschnitt „Sicherheitsdaten aktualisieren“Teilweise aktualisieren Sie bestehende Sicherheitsdaten ohne alles erneut bereitzustellen:
npx @capgo/cli build credentials update --platform <ios|android> [options]Die update Der Befehl verwendet additive Merge für Provisionierungsprofile — neue Profile werden mit bestehenden Profilen kombiniert. Um die gesamte Provisionierungsmap zu ersetzen, fügen Sie Beispiel — fügen Sie ein Erweiterungsprofil zu bestehenden Anmeldeinformationen hinzu: Terminalfenster --overwrite-ios-provisioning-map.
Zur Zwischenablage kopieren
npx @capgo/cli build credentials update \ --platform ios \ --ios-provisioning-profile "com.example.app.widget=./widget_profile.mobileprovision"Anmeldeinformationen auflisten save Abschnitt mit der Überschrift „Anmeldeinformationen auflisten“
Beispiel — fügen Sie ein Erweiterungsprofil zu bestehenden Anmeldeinformationen hinzu: __CAPGO_KEEP_0__
Beispiel — fügen Sie ein Erweiterungsprofil zu bestehenden Anmeldeinformationen hinzu: __CAPGO_KEEP_1__Angezeigt werden die derzeit gespeicherten Anmeldeinformationen (Passwörter werden maskiert):
npx @capgo/cli build credentials list
# List credentials for a specific appnpx @capgo/cli build credentials list --appId com.example.appClear Credentials
Abschnitt mit dem Titel „Clear Credentials“Entfernen Sie die gespeicherten Anmeldeinformationen von Ihrem lokalen Computer:
# Clear all credentialsnpx @capgo/cli build credentials clear
# Clear credentials for a specific app + platformnpx @capgo/cli build credentials clear --appId com.example.app --platform iosMigrate Credentials
Abschnitt mit dem Titel „Migrate Credentials“Konvertieren Sie das legacy-Format für einzelne Profile in das neue multi-target-Format:
npx @capgo/cli build credentials migrate --platform iosDie Migrate-Kommando erkennt alte BUILD_PROVISION_PROFILE_BASE64 Daten, wandelt sie in CAPGO_IOS_PROVISIONING_MAP, und entfernt die alten Schlüssel. Siehe Migration von Single Profile für Details.
iOS-Zertifikate speichern
Abschnitt mit dem Titel “iOS-Zertifikate speichern”Vollständiges Beispiel
Abschnitt mit dem Titel “Vollständiges Beispiel”npx @capgo/cli build credentials save \ --platform ios \ --certificate ./cert.p12 \ --p12-password "YourP12Password" \ --ios-provisioning-profile "com.example.app=./profile.mobileprovision" \ --apple-key ./AuthKey_ABC1234567.p8 \ --apple-key-id "ABC1234567" \ --apple-issuer-id "00000000-0000-0000-0000-000000000000" \ --apple-team-id "TEAM123456"iOS-Optionen
Abschnitt mit dem Titel “iOS-Optionen”| Option | Beschreibung | Erforderlich |
|---|---|---|
--certificate <path> | Pfad zum .p12-Zertifikat | Ja (Veröffentlichung) |
--p12-password <password> | Passwort für das .p12-Zertifikat | Ja (Veröffentlichung) |
--ios-provisioning-profile <mapping> | Zuweisungsprofil-Zuordnung (bundleId=path). Wiederholbar für Mehrziel-Anwendungen. Wenn nur ein Profil und kein Vorlage für bundleId, CLI wird automatisch aus dem Profil abgeleitet. | Ja (Veröffentlichung) |
--apple-key <path> | Pfad zum App Store Connect API .p8-Schlüssel | Siehe Anmerkung¹ |
--apple-key-id <id> | App Store Connect API Schlüssel-ID | Siehe Anmerkung¹ |
--apple-issuer-id <id> | App Store Connect API Aussteller-ID (UUID) | Siehe Anmerkung¹ |
--apple-team-id <id> | App Store Connect Team-ID | Ja |
--ios-distribution <mode> | Verteilungsmodus: app_store (Standard) oder ad_hoc | Nein |
--output-upload | Ermöglichen Sie einen zeitbegrenzten Capgo-Download-Link für das Build-Artifact | Nein (Standard: false) |
--output-retention <seconds> | Wie lange die Build-Ausgaben aufbewahrt werden sollen (z. B. 3600s) | Nein (Standard: 3600s) |
--skip-build-number-bump | Automatische Inkrementierung der Build-Nummer überspringen | Nein |
Was wird gespeichert
Abschnitt mit dem Titel „Was wird gespeichert“Wenn Sie iOS-Zugangsdaten speichern, werden die CLI:
- Liest die Zertifikats- und Profildateien
- Konvertiert sie in Base64-Codierung
- Speichert die Zugangsdaten in dem
.capgo-credentialsOrdner - Speichert Passwörter und IDs als plain text (nur lokale Dateien)
Die gespeicherte Dateistruktur:
{ "ios": { "BUILD_CERTIFICATE_BASE64": "...", "CAPGO_IOS_PROVISIONING_MAP": "{\"com.example.app\":{\"profile\":\"...\",\"name\":\"match AppStore com.example.app\"}}", "APPLE_KEY_CONTENT": "...", "P12_PASSWORD": "...", "APPLE_KEY_ID": "ABC1234567", "APPLE_ISSUER_ID": "...", "APP_STORE_CONNECT_TEAM_ID": "TEAM123456", "CAPGO_IOS_DISTRIBUTION": "app_store" }}Speichern von Android-Zugangsdaten
Abschnitt mit dem Titel „Android-Berechtigungen speichern“Vollständiges Beispiel
Abschnitt mit dem Titel „Vollständiges Beispiel“npx @capgo/cli build credentials save \ --platform android \ --keystore ./release.keystore \ --keystore-alias "my-key-alias" \ --keystore-key-password "KeyPassword123" \ --keystore-store-password "StorePassword123" \ --play-config ./play-store-service-account.jsonAndroid-Optionen
Abschnitt mit dem Titel “Android-Optionen”| Option | Beschreibung | Pflichtfeld |
|---|---|---|
--keystore <path> | Pfad zum .keystore- oder .jks-Datei | Ja (Release) |
--keystore-alias <alias> | Alias des Schlüssels im Keystore | Ja (Release) |
--keystore-key-password <password> | Passwort für den Alias des Schlüssels | Ja (Release) |
--keystore-store-password <password> | Passwort für den Keystore | Ja (Release) |
--play-config <path> | Pfad zur Play Store-Dienstkontodaten-JSON | Ja (Einreichung) |
Was wird gespeichert
Abschnitt mit dem Titel „Was wird gespeichert“Wenn Sie Android-Kennwörter speichern, werden die CLI:
- Liest die Keystore- und Dienstkontodaten-JSON-Dateien
- Konvertiert sie in Base64-Codierung
- Speichert die Anmeldeinformationen im
.capgo-credentialsOrdner - Speichert Passwörter und Alias als plain text (nur lokale Dateien)
Die gespeicherte Dateistruktur:
{ "android": { "ANDROID_KEYSTORE_FILE": "...", "PLAY_CONFIG_JSON": "...", "KEYSTORE_KEY_ALIAS": "my-key-alias", "KEYSTORE_KEY_PASSWORD": "...", "KEYSTORE_STORE_PASSWORD": "..." }}}Mit gespeicherten Anmeldeinformationen verwenden
Abschnitt mit dem Titel „Mit gespeicherten Anmeldeinformationen verwenden“Sobald Sie Anmeldeinformationen gespeichert haben, werden sie automatisch verwendet, wenn Sie bauen:
# Credentials automatically loaded from .capgo-credentials foldernpx @capgo/cli build com.example.app --platform iosSie können auch gespeicherte Anmeldeinformationen mithilfe von Umgebungsvariablen überschreiben:
# Environment variables take precedence over saved credentialsBUILD_CERTIFICATE_BASE64="..." \P12_PASSWORD="different-password" \npx @capgo/cli build com.example.app --platform iosPrioritätsordnung:
- Umgebungsvariablen (höchste Priorität)
- Gespeicherte Anmeldeinformationen in
.capgo-credentialsOrdner - Keine Anmeldeinformationen (niedrigste Priorität)
Gespeicherte Anmeldeinformationen anzeigen
Abschnitt „Gespeicherte Anmeldeinformationen anzeigen“Liste der gespeicherten Anmeldeinformationen:
npx @capgo/cli build credentials listBeispiel-Ausgabe:
📋 Saved Build Credentials:
iOS Credentials: ✓ Certificate (base64) ✓ Provisioning Map (JSON) ✓ Apple Key Content (base64) ✓ P12 Password: ******** ✓ Apple Key ID: ABC1234567 ✓ Apple Issuer ID: 00000000-0000-0000-0000-000000000000 ✓ Team ID: TEAM123456
Android Credentials: ✓ Keystore (base64) ✓ Play Store Config (base64) ✓ Keystore Alias: my-key-alias ✓ Key Password: ******** ✓ Store Password: ********
Location: .capgo-credentials/
🔒 These credentials are stored locally on your machine only. When building, they are sent to Capgo but NEVER stored there. They are auto-deleted after build completion.Sicherheitshinweise
Abschnitt „Sicherheitshinweise“Sicherheit bei lokalem Speicher
Abschnitt „Sicherheit bei lokalem Speicher“-
Dateisicherheitsrechte
Terminalfenster # Ensure credentials folder is not readable by otherschmod 700 .capgo-credentialschmod 600 .capgo-credentials/* -
Keine Zugriffscodes im Commit speichern
Terminalfenster # Add to .gitignoreecho ".capgo-credentials/" >> .gitignore -
Zugriffscodes getrennt
- Verschiedene Zugriffscodes für lokale Entwicklung und CI/CD verwenden
- Zugriffscodes regelmäßig rotieren
- Zugriffscodes nicht zwischen Teammitgliedern teilen
CI/CD-Verwendung
Abschnitt mit dem Titel „CI/CD-Verwendung“Für CI/CD-Umgebungen vorzuziehen Sie Umgebungsvariablen über gespeicherte Anmeldeinformationen.
Vollständige Umgebungsvariablen-Referenz
Abschnitt mit dem Titel “Vollständige Umgebungsvariablen-Referenz”Die CLI liest die folgenden Umgebungsvariablen für Anmeldeinformationen:
iOS-Anmeldeinformationen:
| Variable | Beschreibung | Format | Erforderlich |
|---|---|---|---|
BUILD_CERTIFICATE_BASE64 | P12/PKCS12-Zertifikat für code-Signierung | Base64 | Ja (Release) |
CAPGO_IOS_PROVISIONING_MAP | JSON-Karte von Bundle-IDs zu Provisioning-Profile-Daten | JSON-String | Ja (Release) |
P12_PASSWORD | Passwort für das P12-Zertifikat | Klartext | Optional |
APPLE_KEY_ID | App Store Connect API Zertifikatschlüssel | Zeichenfolge (z.B. "ABC1234567") | Siehe Anmerkung¹ |
APPLE_ISSUER_ID | App Store Connect API Aussteller-ID | UUID-Zeichenfolge | Siehe Anmerkung¹ |
APPLE_KEY_CONTENT | App Store Connect API-Schlüssel (Inhalt der .p8-Datei) | Base64 | Siehe Anmerkung¹ |
APP_STORE_CONNECT_TEAM_ID | Apple-Entwickler-Team-ID | Zeichenfolge (z. B. "XXXXXXXXXX") | Ja |
CAPGO_IOS_DISTRIBUTION | Verteilungsmodus: app_store oder ad_hoc | Zeichenfolge | Nein |
Android-Zertifikate:
| __CAPGO_KEEP_0__ | Beschreibung | Format | Erforderlich |
|---|---|---|---|
ANDROID_KEYSTORE_FILE | Keystore-Datei für das Signieren von APK/AAB | Base64 | Ja (Release) |
KEYSTORE_KEY_ALIAS | Alias des Schlüssels innerhalb des Keystores | Zeichenfolge | Ja (Release) |
KEYSTORE_KEY_PASSWORD | Kennwort für den Alias des Schlüssels | Einfacher Text | Ja* |
KEYSTORE_STORE_PASSWORD | Passwort für das Keystore-Datei | Einfacher Text | Ja* |
PLAY_CONFIG_JSON | Google Play-Dienstkontoinformationen im JSON-Format | Base64 | Ja (Einreichung) |
*Wenn nur ein Passwort bereitgestellt wird, wird es für beide verwendet KEYSTORE_KEY_PASSWORD und KEYSTORE_STORE_PASSWORD.
GitHub Beispiele für Aktionen
Abschnitt mit dem Titel “GitHub Beispiele für Aktionen”name: Cloud Build
on: push: branches: [main]
jobs: build-ios: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - uses: actions/setup-node@v4 with: node-version: '20' - run: npm install - run: npx @capgo/cli build com.example.app --platform ios env: CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }} BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }} CAPGO_IOS_PROVISIONING_MAP: ${{ secrets.CAPGO_IOS_PROVISIONING_MAP }} P12_PASSWORD: ${{ secrets.P12_PASSWORD }} APPLE_KEY_ID: ${{ secrets.APPLE_KEY_ID }} APPLE_ISSUER_ID: ${{ secrets.APPLE_ISSUER_ID }} APPLE_KEY_CONTENT: ${{ secrets.APPLE_KEY_CONTENT }} APP_STORE_CONNECT_TEAM_ID: ${{ secrets.APP_STORE_CONNECT_TEAM_ID }}
build-android: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - uses: actions/setup-node@v4 with: node-version: '20' - run: npm install - run: npx @capgo/cli build com.example.app --platform android env: CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }} ANDROID_KEYSTORE_FILE: ${{ secrets.ANDROID_KEYSTORE_FILE }} KEYSTORE_KEY_ALIAS: ${{ secrets.KEYSTORE_KEY_ALIAS }} KEYSTORE_KEY_PASSWORD: ${{ secrets.KEYSTORE_KEY_PASSWORD }} KEYSTORE_STORE_PASSWORD: ${{ secrets.KEYSTORE_STORE_PASSWORD }} PLAY_CONFIG_JSON: ${{ secrets.PLAY_CONFIG_JSON }}Werte in Base64 vorbereiten
Abschnitt mit dem Titel „Werte in Base64 vorbereiten“Um Ihre Zertifikatsdateien in Base64 umzuwandeln, um sie als CI/CD-Schlüssel zu speichern:
# iOS Certificate (.p12)base64 -i certificate.p12 | tr -d '\n' > certificate_base64.txt
# iOS Provisioning Profiles — use the CLI to generate CAPGO_IOS_PROVISIONING_MAP:npx @capgo/cli build credentials save --platform ios \ --ios-provisioning-profile "com.example.app=./profile.mobileprovision" \ # ... other options# Then copy CAPGO_IOS_PROVISIONING_MAP from .capgo-credentials to your CI secrets
# iOS App Store Connect Key (.p8)base64 -i AuthKey_XXXXXX.p8 | tr -d '\n' > apple_key_base64.txt
# Android Keystore (.keystore or .jks)base64 -i release.keystore | tr -d '\n' > keystore_base64.txt
# Google Play Service Account JSONbase64 -i play-store-service-account.json | tr -d '\n' > play_config_base64.txtWarum sind Umgebungsvariablen sicherer?
Abschnitt mit dem Titel “Warum sind Umgebungsvariablen sicherer?”Diese Methode ist sicherer, weil:
- Geheime Daten werden von Ihrem CI/CD-Plattform verwaltet
- Keine Zugriffskontrolldateien auf den Build-Servern
- Einfache Rotation und Zugriffssteuerung
- Protokolle für die Verwendung von Geheimdiensten
Geheimdienstrotation
Abschnitt mit dem Titel “Geheimdienstrotation”Rotieren Sie Ihre Zugriffsberechtigungen regelmäßig:
- iOS: Erstellen Sie neue Zertifikate und API-Schlüssel jährlich
- Android: Jährlich Passwörter des Keystores ändern
- Nach Teamänderungen: Rotieren, wenn Teammitglieder gehen
Speicherter Zugangsdaten aktualisieren:
# Re-run save command with new credentialsnpx @capgo/cli build credentials save --platform ios --certificate ./new-cert.p12 ...Problembehandlung
Abschnitt mit dem Titel „Problembehandlung“„Keine Zugangsdaten gefunden“
Abschnitt mit dem Titel „Keine Zugangsdaten gefunden“Wenn das Build besagt, dass keine Zugangsdaten gefunden wurden:
-
Überprüfen, ob Zugangsdaten gespeichert sind:
Terminalfenster npx @capgo/cli build credentials list -
Speichere Anmeldedaten, wenn fehlend:
Terminalfenster npx @capgo/cli build credentials save --platform ios ... -
Überprüfe, ob das Verzeichnis für Anmeldedaten existiert:
Terminalfenster ls -la .capgo-credentials/
“Zugriff verweigert” beim Lesen von Anmeldedaten
Abschnitt mit dem Titel ““Zugriff verweigert” beim Lesen von Anmeldedaten”Dateirechte korrigieren:
chmod 700 .capgo-credentialschmod 600 .capgo-credentials/*Keine verwendeten Anmeldedaten
Abschnitt mit dem Titel „Keine verwendeten Anmeldedaten“Überprüfen Sie, ob die richtige Plattform angegeben ist:
# Make sure --platform matches saved credentialsnpx @capgo/cli build com.example.app --platform ios # Uses ios credentialsnpx @capgo/cli build com.example.app --platform android # Uses android credentialsÜberprüfen und erneut speichern Sie die Anmeldedaten
Abschnitt mit dem Titel „Überprüfen und erneut speichern Sie die Anmeldedaten“Wenn die Anmeldedaten korrupt erscheinen:
# Clear all credentialsnpx @capgo/cli build credentials clear
# Save againnpx @capgo/cli build credentials save --platform ios ...Migration von Umgebungsvariablen
Abschnitt mit dem Titel “Migration von Umgebungsvariablen”Wenn Sie derzeit Umgebungsvariablen verwenden, können Sie zu gespeicherten Anmeldeinformationen migrieren:
-
Ziehen Sie Ihre aktuellen Umgebungsvariablen heraus
Terminal-Fenster echo $BUILD_CERTIFICATE_BASE64 # Verify they exist -
Bas64-Dateien zurück in die Originaldateien entschlüsseln (falls erforderlich) Terminal-Fenster
Auf die Zwischenablage kopieren echo "$BUILD_CERTIFICATE_BASE64" | base64 -d > cert.p12echo "$BUILD_PROVISION_PROFILE_BASE64" | base64 -d > profile.mobileprovision -
Save using the CLI
Auf die Zwischenablage kopieren npx @capgo/cli build credentials save \--platform ios \--certificate ./cert.p12 \--ios-provisioning-profile ./profile.mobileprovision \--p12-password "$P12_PASSWORD" \--apple-key-id "$APPLE_KEY_ID" \--apple-issuer-id "$APPLE_ISSUER_ID" \--apple-team-id "$APP_STORE_CONNECT_TEAM_ID"Wenn Sie bestehende Anmeldeinformationen im alten Format (einzelne
BUILD_PROVISION_PROFILE_BASE64Terminal-FensterZur Zwischenablage kopieren npx @capgo/cli build credentials migrate --platform iosund entfernt die alten
CAPGO_IOS_PROVISIONING_MAPundBUILD_PROVISION_PROFILE_BASE64Schlüssel.APPLE_PROFILE_NAMETesten Sie die Build -
Terminal-Fenster
Zur Zwischenablage kopieren npx @capgo/cli build com.example.app --platform ios -
targetLanguage (optional)
Terminalfenster unset BUILD_CERTIFICATE_BASE64 BUILD_PROVISION_PROFILE_BASE64
Datei-Ort
Abschnitt mit dem Titel „Datei-Ort“Die Anmeldeinformationen werden im .capgo-credentials Ordner:
- macOS/Linux:
.capgo-credentials/(in Ihrem Projekt-Root- oder Home-Verzeichnis) - Windows:
.capgo-credentials\(in Ihrem Projekt-Root- oder Home-Verzeichnis)
Der Ordner wird automatisch erstellt, wenn Sie die Anmeldeinformationen zum ersten Mal speichern.
Weitere Schritte
Abschnitt mit dem Titel „Weitere Schritte“- Einstieg - Erstellen Sie Ihre erste Build
- iOS Builds - iOS-spezifische Build-Konfiguration
- Android Builds - Android-spezifische Build-Konfiguration
- Fehlersuche - Häufige Probleme und Lösungen
Hilfe benötigen?
Abschnitt mit dem Titel „Hilfe benötigen?“- 📚 Troubleshootungsanleitung
- 💬 Discord-Gemeinschaft
- 📧 E-Mail: support@capgo.app