Gestion des informations d'identification
Copier un prompt de configuration avec les étapes d'installation et le guide Markdown complet pour ce plugin.
Gérez vos identifiants de build iOS et Android localement pour des builds cloud faciles.
Capgo CLI vous permet de sauvegarder vos identifiants de build localement sur votre machine dans le .capgo-credentials Capgo __CAPGO_KEEP_1__ permet de sauvegarder vos identifiants de build localement sur votre machine dans le
Commandes
Section intitulée « Commandes »Sauver les informations d'identification
Section intitulée « Sauver les informations d'identification »Enregistrez vos informations d'identification de construction locales pour un usage automatique :
npx @capgo/cli build credentials save --platform <ios|android> [options]Mettre à jour les informations d'identification
Section intitulée « Mettre à jour les informations d'identification »Mettez à jour les informations d'identification existantes sans devoir les fournir à nouveau intégralement :
npx @capgo/cli build credentials update --platform <ios|android> [options]La commande utilise la fusion additive pour les profils de provisioning — les nouveaux profils sont fusionnés avec les anciens. update Pour remplacer la carte de provisioning entière, ajoutez Exemple — ajoutez un profil d'extension aux informations d'identification existantes : Fenêtre de terminal --overwrite-ios-provisioning-map.
Copier dans le presse-papier
npx @capgo/cli build credentials update \ --platform ios \ --ios-provisioning-profile "com.example.app.widget=./widget_profile.mobileprovision"Liste des informations d'identification save Section intitulée « Liste des informations d'identification »
Afficher les informations d'identification actuellement enregistrées (les mots de passe sont masqués) :
L'optionSection intitulée «
npx @capgo/cli build credentials list
# List credentials for a specific appnpx @capgo/cli build credentials list --appId com.example.appEffacer les informations d'identification
Section intitulée « Effacer les informations d'identification »Supprimer les informations d'identification enregistrées de votre machine locale :
# 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 iosMigrer les informations d'identification
Section intitulée « Migrer les informations d'identification »Convertir le format de profil unique hérité en format multi-cible nouveau :
npx @capgo/cli build credentials migrate --platform iosLa commande de migration détecte les anciens BUILD_PROVISION_PROFILE_BASE64 informations d'identification, les convertit en CAPGO_IOS_PROVISIONING_MAP, et supprime les clés de legacy. Voir Migration d'un profil unique pour plus de détails.
Enregistrement des informations d'identification iOS
Section intitulée « Enregistrement des informations d'identification iOS »Exemple complet
Section intitulée « Exemple complet »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"Options iOS
Section intitulée « Options iOS »| Option | Description | Obligatoire |
|---|---|---|
--certificate <path> | Chemin vers le fichier .p12 de certificat | Oui (version de production) |
--p12-password <password> | Mot de passe pour le certificat .p12 | Oui (version de production) |
--ios-provisioning-profile <mapping> | Correspondance du profil de provisionnement (bundleId=path). Répétable pour les applications multi-cibles. Si seulement un profil et pas de préfixe bundleId, CLI infère automatiquement à partir du profil. | Oui (version de production) |
--apple-key <path> | Chemin du clé .p8 API d'App Store Connect | Voir la note¹ |
--apple-key-id <id> | ID de clé d'App Store Connect API | Voir la note¹ |
--apple-issuer-id <id> | ID émetteur d'App Store Connect API (UUID) | Voir la note¹ |
--apple-team-id <id> | ID d'équipe d'App Store Connect | Oui |
--ios-distribution <mode> | Mode de distribution : app_store (par défaut) ou ad_hoc | Non |
--output-upload | Activer un lien de téléchargement temporaire Capgo pour l'artifact de build | Non (par défaut : false) |
--output-retention <seconds> | Combien de temps conserver les sorties de build (par exemple 3600s) | Non (par défaut : 3600s) |
--skip-build-number-bump | Ignorer l'incrémentation automatique du numéro de build | Non |
Ce qui est stocké
Titre de la section « Ce qui est stocké »Lorsque vous enregistrez les informations de connexion iOS, le CLI:
- Lecture des fichiers de certificat et de profil de provisioning
- Conversion en codage base64
- Enregistrement des informations de connexion dans le
.capgo-credentialsdossier - Stockage des mots de passe et des identifiants au format texte (fichiers locaux uniquement)
La structure du fichier stocké :
{ "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" }}Enregistrement des informations de connexion Android
Titre de la section « Enregistrement des informations de connexion Android »Exemple complet
Section intitulée « Exemple complet »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.jsonOptions Android
Section intitulée « Options Android »| Option | Description | Obligatoire |
|---|---|---|
--keystore <path> | Chemin vers le fichier .keystore ou .jks | Oui (version de production) |
--keystore-alias <alias> | Alias de la clé dans le keystore | Oui (version de production) |
--keystore-key-password <password> | Mot de passe de l'alias de la clé | Oui (version de production) |
--keystore-store-password <password> | Mot de passe du keystore | Oui (version de production) |
--play-config <path> | Chemin vers le fichier JSON du service Play Store | Oui (soumission) |
Ce qui est stocké
Section intitulée « Ce qui est stocké »Lorsque vous enregistrez les informations de connexion Android, le CLI:
- Lis les fichiers JSON de clé de serveur et de compte de service
- Les convertit en codage base64
- Enregistre les informations de connexion dans le
.capgo-credentialsdossier - Stocke les mots de passe et les alias sous forme de texte (seulement des fichiers locaux)
La structure du fichier stocké :
{ "android": { "ANDROID_KEYSTORE_FILE": "...", "PLAY_CONFIG_JSON": "...", "KEYSTORE_KEY_ALIAS": "my-key-alias", "KEYSTORE_KEY_PASSWORD": "...", "KEYSTORE_STORE_PASSWORD": "..." }}}Utilisation des informations de connexion sauvegardées
Section intitulée « Utilisation des informations d'identification sauvegardées »Une fois que vous avez enregistré vos informations d'identification, elles sont automatiquement utilisées lors de la construction :
# Credentials automatically loaded from .capgo-credentials foldernpx @capgo/cli build com.example.app --platform iosVous pouvez également surcharger les informations d'identification sauvegardées à l'aide de variables d'environnement :
# Environment variables take precedence over saved credentialsBUILD_CERTIFICATE_BASE64="..." \P12_PASSWORD="different-password" \npx @capgo/cli build com.example.app --platform iosOrdre de priorité :
- Variables d'environnement (priorité la plus élevée)
- Informations d'identification sauvegardées dans
.capgo-credentialsdossier - Aucune information d'identification (priorité la plus basse)
Voir les informations de connexion sauvegardées
Section intitulée « Voir les informations de connexion sauvegardées »Liste des informations de connexion que vous avez sauvegardées :
npx @capgo/cli build credentials listExemple de sortie :
📋 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.Meilleures pratiques de sécurité
Section intitulée « Meilleures pratiques de sécurité »Sécurité des données stockées localement
Section intitulée « Sécurité des données stockées localement »-
Permissions de fichiers
Fenêtre de terminal # Ensure credentials folder is not readable by otherschmod 700 .capgo-credentialschmod 600 .capgo-credentials/* -
Ne jamais commettre les informations d'identification
Fenêtre de terminal # Add to .gitignoreecho ".capgo-credentials/" >> .gitignore -
Gérer les informations d'identification séparément
- Utiliser des informations d'identification différentes pour le développement local et les CI/CD
- Roter les informations d'identification régulièrement
- Ne pas partager les informations d'identification entre les membres de l'équipe
Utilisation des CI/CD
Utilisation des CI/CDPour les environnements CI/CD, préférez les variables d'environnement aux informations d'identification enregistrées. Référence complète des variables d'environnement
Référence complète des variables d'environnement
Référence complète des variables d'environnementLe CLI lit les variables d'environnement suivantes pour les informations d'identification :
Informations d'identification iOS :
| Nom de la variable | Description | Format | Obligatoire |
|---|---|---|---|
BUILD_CERTIFICATE_BASE64 | Certificat P12/PKCS12 pour la signature de code | Base64 | Oui (libération) |
CAPGO_IOS_PROVISIONING_MAP | Carte JSON des identifiants de paquet à des données de profil de provisionnement | Chaîne JSON | Oui (libération) |
P12_PASSWORD | Mot de passe pour le certificat P12 | Texte en clair | Facultatif |
APPLE_KEY_ID | Clé d'ID App Store Connect API | Chaîne de caractères (par exemple, « ABC1234567 ») | Voir la note¹ |
APPLE_ISSUER_ID | ID émetteur App Store Connect API | Chaîne de UUID | Voir la note¹ |
APPLE_KEY_CONTENT | Clé App Store Connect API (contenu du fichier .p8) | Base64 | Voir la note¹ |
APP_STORE_CONNECT_TEAM_ID | ID d'équipe développeur Apple | Chaîne (par exemple, « XXXXXXXXXX ») | Oui |
CAPGO_IOS_DISTRIBUTION | Mode de distribution : app_store ou ad_hoc | Chaîne | Non |
Informations d'identification Android :
| Variable | Description | Format | Obligatoire |
|---|---|---|---|
ANDROID_KEYSTORE_FILE | Fichier de clés pour la signature de l'APK/AAB | Base64 | Oui (version de production) |
KEYSTORE_KEY_ALIAS | Alias de clé au sein du fichier de clés | Chaîne de caractères | Oui (version de production) |
KEYSTORE_KEY_PASSWORD | Mot de passe de l'alias de clé | Texte en clair | Oui* |
KEYSTORE_STORE_PASSWORD | Mot de passe pour le fichier de clé de sécurité | Texte brut | Oui* |
PLAY_CONFIG_JSON | JSON de compte de service Google Play | Base64 | Oui (soumission) |
Si seul un mot de passe est fourni, il sera utilisé pour les deux KEYSTORE_KEY_PASSWORD et KEYSTORE_STORE_PASSWORD.
GitHub Exemples d'actions
Section intitulée « GitHub Exemples d'actions »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 }}Préparation des valeurs Base64
Section intitulée « Préparation des valeurs Base64 »Pour convertir vos fichiers de clés en base64 pour les secrets CI/CD :
# 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.txtPourquoi les variables d'environnement sont plus sécurisées
Section intitulée « Pourquoi les variables d'environnement sont plus sécurisées »Cette approche est plus sécurisée car :
- Les secrets sont gérés par votre plateforme CI/CD
- Aucun fichier de credenciaux sur les exécutants
- Rotation facile et contrôle d'accès
- Journal d'événements pour l'utilisation des secrets
Rotation de credenciaux
Sous-titre “Rotation de credenciaux”Rotez régulièrement vos credenciaux :
- iOSGénérez de nouveaux certificats et API clés tous les ans
- AndroidChangez les mots de passe des clés de stockage annuellement
- Après les changements d'équipe: Rotation lorsque les membres de l'équipe quittent
Mettre à jour les informations d'identification enregistrées :
# Re-run save command with new credentialsnpx @capgo/cli build credentials save --platform ios --certificate ./new-cert.p12 ...Résolution des problèmes
Sous-section intitulée “Résolution des problèmes””Aucune information d'identification trouvée”
Sous-section intitulée “”Aucune information d'identification trouvée””Si l'éditeur indique que les informations d'identification n'ont pas été trouvées :
-
Vérifiez si les informations d'identification sont enregistrées:
Fenêtre de terminal npx @capgo/cli build credentials list -
Sauvegarder les informations d'identification si elles manquent:
Fenêtre de terminal npx @capgo/cli build credentials save --platform ios ... -
Vérifier l'existence du dossier des informations d'identification:
Fenêtre de terminal ls -la .capgo-credentials/
“Accès refusé” lors de la lecture des informations d'identification
Section intitulée ““Accès refusé” lors de la lecture des informations d'identification””Réparer les permissions du fichier :
chmod 700 .capgo-credentialschmod 600 .capgo-credentials/*Les informations d'identification ne sont pas utilisées
Section intitulée « Les informations d'identification ne sont pas utilisées »Vérifiez que la plateforme correcte est spécifiée :
# 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 credentialsEffacer et réenregistrer les informations d'identification
Section intitulée « Effacer et réenregistrer les informations d'identification »Si les informations d'identification semblent corrompues :
# Clear all credentialsnpx @capgo/cli build credentials clear
# Save againnpx @capgo/cli build credentials save --platform ios ...Migration depuis les variables d'environnement
Section intitulée « Migration depuis les variables d'environnement »Si vous utilisez actuellement des variables d'environnement, vous pouvez migrer vers des informations d'identification sauvegardées :
-
Extraire vos variables d'environnement actuelles
Fenêtre de terminal echo $BUILD_CERTIFICATE_BASE64 # Verify they exist -
Décodez les fichiers base64 pour les restaurer dans leur forme d'origine (si nécessaire)
Fenêtre de terminal echo "$BUILD_CERTIFICATE_BASE64" | base64 -d > cert.p12echo "$BUILD_PROVISION_PROFILE_BASE64" | base64 -d > profile.mobileprovision -
Sauvegarder à l'aide de CLI
Fenêtre de terminal 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"Si vous avez des informations d'identification existantes sauvegardées sous la forme ancienne (simple)
BUILD_PROVISION_PROFILE_BASE64Terminal :Fenêtre de terminal npx @capgo/cli build credentials migrate --platform iosCette commande convertit le profil legacy en un
CAPGO_IOS_PROVISIONING_MAPet supprime les anciensBUILD_PROVISION_PROFILE_BASE64etAPPLE_PROFILE_NAMEclés. -
Tester la construction
Fenêtre de terminal npx @capgo/cli build com.example.app --platform ios -
Supprimer les variables d'environnement (facultatif)
Fenêtre de terminal unset BUILD_CERTIFICATE_BASE64 BUILD_PROVISION_PROFILE_BASE64
Emplacement du fichier
Section intitulée « Emplacement du fichier »Les informations d'identification sont stockées dans le .capgo-credentials dossier :
- macOS/Linux:
.capgo-credentials/(dans votre répertoire racine ou dossier personnel) - Windows:
.capgo-credentials\(dans votre répertoire racine ou dossier personnel)
Le dossier est automatiquement créé lorsque vous enregistrez les informations d'identification pour la première fois.
Étapes suivantes
Étape suivante- Démarrage - Créer votre première build
- Builds iOS - Configuration de build spécifique à iOS
- Builds Android - Configuration de build spécifique à Android
- Résolution de problèmes - Problèmes et solutions courants
Besoin d'aide?
Guide de résolution de problèmes- 📚 Étape suivante
- 💬 Communauté Discord
- 📧 Courriel : support@capgo.app