Zum Inhalt springen

API Schlüssel

API Schlüssel verwenden die rollenbasierte Zugriffssteuerung (RBAC). Ein Schlüssel kann eine organisationseinheitweite Rolle, Anwendungsbereichsbindung oder beide haben. Jede Anwendungsbindung bleibt mit der zugehörigen Organisation verbunden. Für die geringste Privilegien sollten Sie einen Schlüssel auf ausgewählte Anwendungen beschränken, anstatt eine organisationseinheitweite Rolle zuzuweisen.

Navigieren Sie zu Einstellungen > Organisation > API Schlüssel bei console.capgo.app/settings/organisation/api-schlüssel.

Die Seite zeigt zwei Abschnitte an:

  • RBAC-Schlüssel — Schlüssel mit zugewiesenen Rollen (empfohlen). Diese Schlüssel verwenden das neue rollenbasierte Berechtigungssystem.
  • Legacy-Schlüssel — Ältere Schlüssel, die das einfache Modus-basierte System verwenden (read, upload, write, allKeine Rollenzuweisungen.
API-Schlüssel-Seite, die RBAC- und Legacy-Sektionen zeigt.
  1. Klicken Sie auf den ”+” Schaltfläche oben auf der Tabelle der RBAC-Schlüssel.

  2. Besetzen Sie die Schlüsselinformationen:

    • Name (Pflichtfeld) — Eine beschreibende Bezeichnung für den Schlüssel (z. B. „CI/CD Deploy“ oder „Monitoring Read-Only“).
    • Sicheren Schlüssel erstellen (optional) — Wenn aktiviert, wird der Schlüssel serverseitig gehasht. Der plain-text-Schlüssel wird angezeigt nur einmal nach der Erstellung und kann später nicht mehr abgerufen werden.
    • Ablaufdatum setzen (optional) — Wählen Sie ein Datum, nach dem der Schlüssel nicht mehr funktioniert. Einige Organisationen erzwingen eine obligatorische Ablaufzeit durch Richtlinie.
API-Schlüssel-Erstellungsbildschirm mit Name, sichere Schlüsseloption und Ablaufdatum
  1. Wählen Sie den Schlüsselscope:

    • Organisationsweite Zugriffsberechtigung — Wählen Sie ein Organisationsrolle um die Grundrechte im Unternehmen festzulegen. Die verfügbaren Rollen hängen von Ihrem eigenen Rollenlevel ab:
      • Keine — Keine organisierten Zugriffsberechtigung.
      • Mitglied — Grundlegende Leserecht auf die Organisation.
      • Admin — Vollzugriff auf die Organisation und alle ihre Apps.
    • App-only-Zugriff — Aktivieren Beschränken auf ausgewählte Apps. Jedes App-Binding bleibt mit der zugehörigen Organisation verbunden; dieser Modus umgeht nur eine Organisation-weite RBAC-Rolle.
  2. Wenn die Schlüsselorganisationen über den öffentlichen API erstellen muss, aktivieren Sie Ermöglichen, Organisationen zu erstellen.

    Dies fügt dem globalen org.create Zugriff hinzu. Die Schlüssel benötigen auch eine Organisation-scope org_admin oder org_super_admin Bindung. In der Dashboard, Auswahl von Admin erstellt die org_admin Bindung. Wenn diese Schlüssel eine neue Organisation erstellt, Capgo wird automatisch der Schlüssel als Super Admin auf dieser neuen Organisation zugewiesen.

  3. Um Anwendungen Zugriff zu gewähren:

    • Wenn Beschränke diesen Schlüssel auf ausgewählte Apps aktiviert ist, wähle eine Organisation unter Organisationen, um Apps zu filtern um deren Apps zu enthüllen. Die ausgewählten App-Bindungen bleiben mit ihren eigenen Organisationen verbunden; diese Filterung gewährt keine Organisation-weite Zugriffsberechtigung.
    • Klicken Hinzufügen von AppWählen Sie eine oder mehrere Apps aus und zuweisen Sie dann einer jeden eine Rolle:
      • App-Leser — Nur-Lese-Zugriff auf die App.
      • App-Herausgeber — Neuere Pakete hochladen können.
      • App-Entwickler — Pakete hochladen, Geräte verwalten, native Builds auslösen und Kanal-Einstellungen aktualisieren können.
      • App-Administrator — Vollzugriff auf die App.
      • App-Vorschau — CI/CD-Zyklus vorhersehen: Ein Paket hochladen und einen Vorschaukanal erstellen. Der Kanal erhält automatische, kanal-grenzende Rechte nur für diese Schlüssel.
  4. Klicken ‘Erstellen’.

  5. Wenn Sie ‘checked’ ausgewählt haben Sichere Schlüssel erstellen, ein Modalfenster wird angezeigt, das den Klartextschlüssel anzeigt. Kopieren Sie ihn sofort — er kann nicht nach dem Schließen des Modalfensters wiederhergestellt werden.

Einmaliger API-Schlüssel-Schlüsselmodul mit Kopierknopf

Verwenden Sie einen App-Vorschau-Schlüssel für Vorschau-Workflows

Abschnitt mit dem Titel ‘Verwenden Sie einen App-Vorschau-Schlüssel für Vorschau-Workflows’

Verwenden App-Vorschau für CI, das eine temporäre, nicht öffentliche Vorschaukanal erstellt, ein Bundle hochlädt und promotet und dann sowohl den Kanal als auch das Bundle entfernt. Es hat keinen Lebenszyklus-Zugriff auf einen bestehenden Standard- oder Hauptkanal.

  1. Erstelle eine RBAC-Schlüssel und aktiviere Beschränke diesen Schlüssel auf ausgewählte Apps.
  2. Unter Organisationen, um Apps zu filtern, wähle die Organisation aus, um ihre Apps anzuzeigen; jede ausgewählte App bleibt mit ihrer eigenen Organisation verbunden.
  3. Füge nur die App oder Apps hinzu, die für Vorschau-Deployments verwendet werden.
  4. Wähle App-Vorschau für jede ausgewählte App.
  5. Erstelle einen sicheren Schlüssel, setze einen Ablaufdatum, wenn angebracht, und speichere ihn in deinem CI-Secret-Manager.

Diese ausgewählten-Apps-Modus lässt eine organisationseigene Rolle aus; es entfernen Sie die Organisation zugeordnet. Jedes Bindung bleibt auf die ausgewählte App und die von dieser App gehaltene Organisation beschränkt. app_preview Erlaubnis

Berechtigungen und Grenzenauf der ausgewählten App
app_preview , undapp.read, app.read_bundles, app.upload_bundleAutomatisch app.create_channel.
Bindung channel_preview Wenn diese Schlüssel eine Kanal erstellt, __CAPGO_KEEP_0__ gibt dem SchlüsselWhen this key creates a channel, Capgo automatically gives the key channel.read, channel.promote_bundlefür diesen Kanal nur. channel.delete ]}

app_preview beibehalten app.read, so kann die Schlüssel die Metadaten des ausgewählten Apps verwalten. Die automatische Kindbindung ist ein Verwaltung Grenze: sie gewährt keine Lebenszyklusmutationen für Kanäle, die die Schlüssel nicht erstellt hat.

Capgo registriert auch, welcher App Preview-Schlüssel ein Bundle hochgeladen hat. Die Schlüssel kann nur ihr eigenes Bundle auf jedem Preview-Kanal erstellen, den sie erstellt, und kann diese Paarung gemeinsam löschen. Sie erhält keine Kanalbindung für einen bestehenden Standard- oder Hauptkanal, einen von einem anderen Preview-Schlüssel erstellten Kanal oder ein anderes Schlüssels Bundle.

Führen Sie für einen typischen CI-Job eine eindeutige Kanalnamen pro Pull-Request aus:

Befehlszeichenfenster
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

Führen Sie für einen neuen Kanal bundle upload --channel erstellt den Kanal, lädt das Bundle hoch und promotet es in einem Flow. Der letzte Befehl verwendet eine enge atomische Reinigungsroute: er gelingt nur, wenn die Schlüssel den Preview-Kanal und sein verbundenes, nicht geteiltes Bundle besitzt. App Preview hat immer noch keine allgemeine Funktion bundle.deleteEs kann nicht beliebig einen Bundle löschen.

Siehe die Zugriffssteuerungsreferenz für die vollständige Grenze.

How managt man (bearbeiten) einen API-Schlüssel?

Abschnitt mit dem Titel „Wie man (bearbeiten) einen API-Schlüssel?“

Klicken Sie auf das Schraubenzieher-Icon (Verwalten) auf jedem RBAC-Schlüssel in der Liste. Dies öffnet die Detailseite des Schlüssels, auf der Sie Folgendes tun können:

  • Den Schlüssel namen ändern.
  • Den Organisationsrolle aktualisieren.
  • Das Erstellen von Organisationen zulassen, wenn der Schlüssel eine Admin-Organsationsrolle hat. Klicken Sie auf das Schraubenzieher-Icon (Verwalten) auf jedem RBAC-Schlüssel in der Liste.
  • Hinzufügen, entfernen oder ändern Anwendungsrollen.

Klicken Sie “Änderungen speichern” sobald Sie fertig sind.

API-Schlüssel-Seite mit aktuellen Rolleneinstellungen

Um die geheime Werte eines API-Schlüssels zu regenerieren, klicken Sie auf das aktualisieren-Symbol (Regenerieren) auf jeder Schlüssel in der Liste.

Ein Bestätigungsdialog wird erscheinen. Nach Bestätigung:

  • Sichere (gehashte) Schlüssel : Ein neuer Textschlüssel wird generiert und einmal in einem Modalfenster angezeigt. Kopieren Sie ihn sofort.Sichere Schlüssel
  • : Der Schlüsselwert wird serverseitig neu generiert. Jede Integration mit dem alten Schlüsselwert funktioniert sofort nicht mehr.__CAPGO_KEEP_0__-Schlüsselregenerierung-Bestätigung

Wie kann man einen __CAPGO_KEEP_0__-Schlüssel löschen?

Überschrift: Wie kann man einen API-Schlüssel löschen?

Icon trash icon Mit (Löschen) auf jeder Taste in der Liste bestätigen Sie die Löschung im Dialog.

Die Taste wird sofort zurückgezogen — jede Anfrage, die sie verwendet, schlägt fehl.

API-Taste-Löschungsbestätigungsdialog

Wenn Sie Schlüssel in der Veralteten Schlüssel Sektion (Schlüssel ohne Rollenzuweisungen) sehen, verwenden diese das ältere Modus-basierte Berechtigungssystem (read, upload, write, all). Sie funktionieren noch, nutzen aber nicht die Vorteile des RBAC-fine-granularen Berechtigungssystems.

Veraltete Schlüssel können regeneriert und aus der Liste gelöscht werden, aber nicht bearbeitet werden, um RBAC-Rollen hinzuzufügen. Wir empfehlen, neue RBAC-Schlüssel zu erstellen und veraltete Schlüssel zu löschen, wenn möglich.

Wenn Sie veraltete Schlüssel direkt verwalten müssen, können Sie sie immer noch unter console.capgo.app/dashboard/apikeys. Diese Seite wird abgeschafft und wird in einer zukünftigen Aktualisierung entfernt.

Wenn Sie "__CAPGO_KEEP_0__ Schlüsseln" verwenden, um das Dashboard und __CAPGO_KEEP_0__-Operationen zu planen, verbinden Sie es mit "__CAPGO_KEEP_0__ Übersicht" Wenn Sie "API Übersicht" verwenden, um die Implementierungsdetails in "API Übersicht", zu sehen to plan dashboard and API operations, connect it with API Overview Weitermachen von API Schlüsseln Wenn Sie "Weitermachen von __CAPGO_KEEP_0__ Schlüsseln" verwenden, um die Implementierungsdetails in "Weitermachen von __CAPGO_KEEP_0__ Schlüsseln", zu sehen This page is deprecated and will be removed in a future update. Keep going from API Keys Section titled “Keep going from API Keys” Geräte für die Implementierungsdetails in Geräte, und Pakete für die Implementierungsdetails in Pakete.