Skip to main content
Skip to content

Autorisierung von Anmeldeinformationen für die Einmalanmeldung mit einer GitHub-App

Autorisieren Sie Anmeldeinformationen für mehrere Organisationen, indem Sie zulassen, dass ein von Einem Unternehmen installiertes GitHub App Einmaliges Anmelden (Single Sign-On, SSO)-Autorisierungen verwaltet.

Wer kann dieses Feature verwenden?

Enterprise owners and users with the "Manage enterprise credentials" permission

Informationen zum Autorisieren von Anmeldeinformationen mit einem GitHub App

Standardmäßig können von Unternehmen installierte GitHub Apps keine Anmeldeinformationen autorisieren. Um zu verringern, wie oft Unternehmensmitglieder dieselben Anmeldeinformationen für einzelne Organisationen autorisieren müssen, können Sie einer App erlauben, vorhandene personal access tokens (classic) oder überprüfte SSH-Authentifizierungsschlüssel zu autorisieren. Bis zu 50 ausgewählte Organisationen sind pro Anforderung zulässig.

Informationen dazu, wie Sie Anmeldeinformationen für eine einzelne Organisation ohne GitHub App autorisieren, finden Sie unter Autorisieren eines persönlichen Zugriffstokens für die Verwendung mit Single Sign-On oder Einen SSH-Schlüssel für die Verwendung mit Single Sign-On autorisieren.

Voraussetzungen

Bevor die App Anmeldeinformationen autorisieren kann, müssen die folgenden Anforderungen erfüllt sein:

  • Das Unternehmen muss SSO auf Unternehmensebene verwenden.
  • Der Besitzer der Anmeldeinformationen muss Mitglied jeder Organisation sein, in der die App die Anmeldeinformationen autorisiert.

Erstellen von GitHub App

  1. Registrieren Sie eine neue App. Anweisungen findest du unter Registrieren einer GitHub-App. Die App muss:

    • Sich im Besitz des Unternehmens oder einer Organisation innerhalb des Unternehmens befinden.
    • Schreibzugriff auf die Berechtigung „Unternehmensanmeldedaten“ haben.
  2. Notieren Sie sich die Client-ID der App, und generieren Sie dann einen privaten Schlüssel und speichern Sie sie sicher. Siehe Verwalten privater Schlüssel für GitHub Apps.

  3. Installieren Sie die App auf Ihrem Unternehmenskonto. Siehe Installieren einer GitHub-App in deinem Unternehmen.

  4. Notieren Sie sich in der URL der Installationsseite der App die Installations-ID. Die ID ist die Zeichenfolge der Zahlen am Ende der /enterprises/ENTERPRISE/settings/installations/ID URL.

Einem GitHub App das Autorisieren von Anmeldeinformationen erlauben

  1. Navigieren Sie zu Ihrem Unternehmen. Beispielsweise auf der Seite Unternehmen in GitHub.com.

  2. Klicke unter Settings auf Authentication security.

  3. Aktivieren Sie unter „Credentials“ Autorisieren von Anmeldeinformationen zulassenGitHub Apps.

Generieren eines Installationszugriffstokens:

Die App muss ein Unternehmensinstallationszugriffstoken verwenden, um die API-Anforderungen zu authentifizieren. Installationszugriffstoken für Organisationen, Benutzerzugriffstoken und personal access tokens werden nicht unterstützt.

So generieren Sie ein Installationszugriffstoken:

  1. Verwenden Sie die Client-ID und den privaten Schlüssel der App, um ein JSON-Webtoken (JWT) zu generieren. Siehe Generieren eines JSON-Webtokens (JWT) für eine GitHub App.
  2. Verwenden Sie die JWT- und Unternehmensinstallations-ID, um ein Installationszugriffstoken zu erstellen. Siehe Generieren eines Installationszugriffstokens für eine GitHub App.

Das Installationszugriffstoken erbt die Unternehmensberechtigungen, die der App gewährt werden, können nicht abgegrenzt werden und laufen nach einer Stunde ab.

Suchen nach Anmeldeinformationsbezeichnern

Für Anmeldeinformationen, die bereits für eine Organisation in Ihrem Unternehmen autorisiert sind, kann ein Organisationsbesitzer die REST-API verwenden, um Bezeichner in Massen abzurufen. Siehe REST-API-Endpunkte für Organisationen.

Verwenden Sie authorized_credential_id in der Antwort für einen personal access token (classic)oder fingerprint für einen SSH-Schlüssel. Verwenden Sie credential_id nicht, das die Autorisierung der Anmeldeinformationen für diese Organisation kennzeichnet.

Dieser Endpunkt gibt keine Anmeldedaten zurück, die für die Organisation nicht autorisiert sind. Verwenden Sie eine der folgenden Methoden, um einen Bezeichner für eine andere Anmeldeinformation abzurufen:

  • Öffnen Sie bei einem personal access token (classic)-Token das Token auf der Seite „Tokeneinstellungen“. Die Token-ID ist die Nummer am Ende der /settings/tokens/ID URL. Wenn das Token auch für eine Aktion verwendet wurde, die im Unternehmensüberwachungsprotokoll aufgezeichnet wurde, kann ein Unternehmensbesitzer die ID im Feld des Ereignisses token_id finden. Die ID ist nur im Auditprotokoll verfügbar, solange ein für das Unternehmen sichtbares Ereignis, das mit diesem Token authentifiziert wurde, aufbewahrt wird. Teilen Sie die ID, nicht den Tokenwert. Weitere Informationen findest du unter Verwalten deiner persönlichen Zugriffstoken und Durchsuchen des Prüfprotokolls für Ihr Unternehmen.
  • Ermitteln Sie für einen SSH-Schlüssel den SHA-256-Fingerabdruck des verifizierten, dem Benutzer gehörenden Authentifizierungsschlüssels. Weitere Informationen findest du unter SSH-Schlüssel überprüfen.

Autorisieren von Anmeldeinformationen

Verwenden Sie die REST-API, um die Anmeldeinformationen für ausgewählte Organisationen zu autorisieren. Beispiel:

curl --request POST \
  --url "https://api.github.com/enterprises/ENTERPRISE/credential-authorizations" \
  --header "Accept: application/vnd.github+json" \
  --header "Authorization: Bearer INSTALLATION-ACCESS-TOKEN" \
  --header "X-GitHub-Api-Version: 2026-03-10" \
  --data '{
    "credential_id": 12345678,
    "credential_type": "classic_pat",
    "organizations": ["ORGANIZATION-1", "ORGANIZATION-2"]
  }'

Ersetzen Sie ENTERPRISE durch den Enterprise-Slug, INSTALLATION-ACCESS-TOKEN durch das Installationszugriffstoken und ORGANIZATION-1 und ORGANIZATION-2 durch die Organisations-Slugs. Ersetzen Sie 12345678 durch die ID von personal access token (classic). Um stattdessen einen SSH-Schlüssel zu autorisieren, ersetzen Sie 12345678 durch den SHA-256-Fingerabdruck des Schlüssels und ersetzen classic_pat Sie durch ssh_key.

Weitere Informationen findest du unter REST-API-Endpunkte für Autorisierungen von Unternehmensanmeldeinformationen.

Deaktivieren der Autorisierung von Anmeldeinformationen durch GitHub Apps

Durch Deaktivieren der Einstellung wird verhindert, dass Apps neue Autorisierungen für Anmeldeinformationen erstellen. Vorhandene Autorisierungen bleiben aktiv, bis sie widerrufen werden, die Anmeldeinformationen widerrufen oder gelöscht werden, oder der Besitzer der Anmeldeinformationen verliert die Mitgliedschaft in der Organisation.

Sie können dieselbe REST-API verwenden, um Autorisierungen zu widerrufen, die eine App über die Unternehmensdelegierung erstellt hat.