Vai al contenuto

API Chiavi

API chiavi utilizzano il controllo degli accessi basato sul ruolo (RBAC). Una chiave può avere un ruolo organizzativo, vincoli di app, o entrambi. Ogni vincolo di app rimane associato all'app proprietaria dell'organizzazione. Per privilegi minimi, limitare una chiave a selezionate app anziché assegnare un ruolo organizzativo.

Naviga a Impostazioni > Organizzazione > API Chiavi a console.capgo.app/settings/organization/api-chiavi.

La pagina mostra due sezioni:

  • Chiavi RBAC – Chiavi con ruoli assegnati (consigliato). Queste chiavi utilizzano il nuovo sistema di autorizzazione basato sui ruoli.
  • Chiavi Obsoleti — Chiavi più vecchie che utilizzano il sistema di base basato sul modo (read, upload, write, all) senza assegnazioni di ruolo.
pagina delle chiavi API che mostrano le sezioni RBAC e Legacy
  1. Cliccare sul ”+” tasto

  2. all'inizio della tabella delle chiavi RBAC. Compilare il :

    • informazioni sulla chiave Nome (obbligatorio) — Un etichetta descrittiva per la chiave (ad esempio, “CI/CD Deploy” o “Monitoring Read-Only”).
    • Genera una chiave sicura (facoltativo) — Quando selezionato, la chiave viene crittografata sul server. La chiave in chiaro viene visualizzata solo una volta dopo la creazione e non può essere recuperata in seguito. solo una volta dopo la creazione e non può essere recuperata in seguito.
    • Imposta la data di scadenza (facoltativo) — Scegli una data dopo la quale la chiave non funziona più. Alcune organizzazioni impongono la scadenza obbligatoria attraverso la politica.
API form di creazione della chiave con nome, opzione chiave sicura e scadenza
  1. Scegli lo scopo della chiave:

    • Accesso organizzativo — Seleziona un ruolo organizzativo per definire i permessi di base all'interno dell'organizzazione. I ruoli disponibili dipendono dal tuo livello di ruolo:
      • Nessuna — Nessun accesso organizzativo.
      • Membro — Accesso di lettura base all'organizzazione.
      • Amministratore — Accesso amministrativo completo all'organizzazione e a tutte le sue app.
    • Accesso solo app — Abilita Limita questa chiave alle app selezionate. Ogni app binding rimane collegata all'app di proprietà dell'organizzazione; questo modo omette solo un ruolo RBAC organizzativo.
  2. Se la chiave deve creare organizzazioni attraverso il pubblico API, abilita Consenti la creazione di organizzazioni.

    Aggiunge la possibilità globale org.create La chiave richiede anche una organizzazione org_admin o org_super_admin Aggiunge il legame globale La chiave crea anche il legame Admin org_admin binding. When this key creates a new organization, Capgo automatically assigns the key as Super Admin on that new organization.

  3. Per concedere l'accesso all'applicazione:

    • Quando Limita questa chiave agli app selezionati è abilitato, scegli un'organizzazione sotto Organizzazioni per filtrare le app per rivelare le sue app. Le associazioni delle app selezionate rimangono associate alle loro organizzazioni di appartenenza; questo filtro non concede accesso organizzativo.
    • Clicca ”+ Aggiungi App”, seleziona una o più app, quindi assegna un ruolo a ciascuna:
      • Letto dell'App — Accesso di sola lettura all'app.
      • Caricatore di App — Può caricare nuovi bundle.
      • Sviluppatore di App — Può caricare bundle, gestire dispositivi, attivare costruzioni native e aggiornare impostazioni del canale.
      • Amministratore di App — Accesso completo all'app.
      • Anteprima App – Anteprima il ciclo di vita CI/CD: carica un bundle e crea un canale di anteprima. Il canale riceve diritti di ciclo di vita automatici, limitati al canale, solo per questa chiave.
  4. Clicca “Crea”.

  5. Se hai selezionato Crea una chiave sicura, si visualizza un modulo con la chiave in testo puro. Copia immediatamente – non può essere recuperata dopo la chiusura del modulo.

One-time API key secret modal with copy button

Usa una chiave di anteprima per flussi di lavoro di anteprima

Sottosezione intitolata “Usa una chiave di anteprima per flussi di lavoro di anteprima”

Usa Anteprima dell'app per il CI che crea un canale di anteprima temporaneo e non pubblico, carica e promuove un bundle, quindi elimina sia il canale che il bundle. Non ha accesso alla vita ciclo di un canale predefinito o principale esistente.

  1. Creare una chiave RBAC e abilitare Limita questa chiave ai soli app selezionate.
  2. Sotto Ai gruppi di utenti per filtrare le app, selezionare il gruppo per rivelare le sue app; ogni app selezionata rimane associata al suo gruppo di app proprietario.
  3. Aggiungi solo l'app o le app utilizzate per le distribuzioni di anteprima.
  4. Seleziona Anteprima dell'app per ogni app selezionata.
  5. Creare una chiave sicura, impostare una data di scadenza quando opportuno e memorizzarla nel tuo gestore dei segreti CI.

Questo modo seleziona-apps solo omette un ruolo organizzativo; non rimuove l'associazione organizzativa. Ogni legame rimane limitato all'app selezionata e a quella app pertinente organizzazione. app_preview Concedere

Permessi e limitisull'app selezionata
app_preview , eapp.read, app.read_bundles, app.upload_bundleLegame app.create_channel.
Quando questa chiave crea un canale, __CAPGO_KEEP_0__ dà automaticamente la chiave channel_preview Creare una chiave sicura, impostare una data di scadenza quando opportuno e memorizzarla nel tuo gestore dei segreti CI.Questo modo seleziona-apps solo omette un ruolo organizzativo; non rimuove l'associazione organizzativa. Ogni legame rimane limitato all'app selezionata e a quella app pertinente organizzazione. Concedere Permessi e limiti sull'app selezionata, e Legame Quando questa chiave crea un canale, Capgo dà automaticamente la chiave channel.read, channel.promote_bundlee channel.delete per quel canale solo.

app_preview conserva app.readcosì la chiave può enumerare i metadati del canale selezionato nell'applicazione. La binding automatica dei figli è un gestione limite: non concede mutazioni di ciclo di vita per i canali che la chiave non ha creato.

Capgo registra anche quale chiave di anteprima di App Preview ha caricato un bundle. La chiave può impostare solo il suo bundle su ogni canale di anteprima che crea e può pulire quella coppia assieme. Non riceve una binding del canale per un canale predefinito o principale esistente, un canale creato da un'altra chiave di anteprima o un bundle di un'altra chiave.

Per un lavoro di CI tipico, utilizza un nome di canale univoco per ogni richiesta di pull:

Finestra del terminale
APP_ID="com.example.app"
PREVIEW_CHANNEL="pr-123"
BUNDLE_VERSION="1.2.3-pr.123"
npx @capgo/cli@latest bundle upload "$APP_ID" \
--apikey "$CAPGO_API_KEY" \
--path ./dist \
--channel "$PREVIEW_CHANNEL" \
--bundle "$BUNDLE_VERSION"
npx @capgo/cli@latest channel delete "$PREVIEW_CHANNEL" "$APP_ID" \
--apikey "$CAPGO_API_KEY" \
--delete-bundle \
--success-if-not-found

Per un nuovo canale, bundle upload --channel crea il canale, carica il bundle e lo promuove in un flusso unico. L'ultima riga utilizza una strada di pulizia atomica stretta: ha successo solo quando la chiave possiede il canale di anteprima e il suo bundle collegato e non condiviso. Anteprima App non dispone ancora di una versione generale bundle.deletequindi non può eliminare un bundle arbitrario.

Vedi il Riferimento al Controllo dell'Accesso per il confine completo.

Cliccare l'icona del chiave inglese (Gestisci) su qualsiasi chiave RBAC nella lista. Ciò apre la pagina dei dettagli della chiave dove puoi:

  • Cambiare il nome della chiave Modificare il.
  • ruolo dell'organizzazione Abilitare o disabilitare.
  • icona del cacciavite Consenti la creazione di organizzazioni quando la chiave ha il ruolo di organizzazione Admin.
  • Aggiungi, rimuovi o modifica ruoli per app.

Clicca “Salva modifiche” quando hai finito.

pagina di modifica della chiave API con impostazioni attuali del ruolo

Per regenerare il valore segreto di una chiave API, clicca l'icona di aggiornamento Sezione intitolata “Come regenerare una chiave __CAPGO_KEEP_0__?” (Regenera) su qualsiasi chiave della lista.

Comparirà un dialogo di conferma. Dopo aver confermato:

  • Per chiavi (crittografate) sicure: Si genera e si visualizza una volta in un modulo una nuova chiave di testo piana. Copiala immediatamente.
  • Per chiavi piane: Il valore della chiave viene rigenerato server-side.

Qualsiasi integrazione che utilizza il vecchio valore della chiave smetterà di funzionare immediatamente.

API conferma della regenerazione della chiave

Click il l'icona del cestino (Elimina) su qualsiasi chiave nella lista. Conferma la cancellazione nella finestra di dialogo.

La chiave viene revocata immediatamente — qualsiasi richiesta che la utilizza fallirà.

API conferma di cancellazione della chiave

Se vedi chiavi nella Sottosezione intitolata “Chiavi obsolete” sezione (chiavi senza assegnazioni di ruolo), queste utilizzano il sistema di autorizzazione basato sulla modalità più vecchio (read, upload, write, allLe chiavi obsolete funzionano ancora, ma non beneficiano dei permessi RBAC fine-granulari.

Le chiavi obsolete possono essere regenerate e cancellate dalla lista, ma non possono essere modificate per aggiungere ruoli RBAC. Raccomandiamo di creare nuove chiavi RBAC e cancellare le chiavi obsolete quando possibile.

Se hai bisogno di gestire le chiavi legacy direttamente, puoi ancora accedervi a console.capgo.app/dashboard/apikeysQuesta pagina è obsoleta e verrà rimossa in un aggiornamento futuro.

Se stai utilizzando API Chiavi per pianificare dashboard e API operazioni, connettilo con API Panoramica per i dettagli di implementazione in API Panoramica Introduzione per i dettagli di implementazione in Introduzione API Chiavi per i dettagli di implementazione in API Chiavi, Dispositivi per i dettagli di implementazione in Dispositivi, e Pacchetti per i dettagli di implementazione in Pacchetti.