Skip to main content

Diese Version von GitHub Enterprise Server wurde eingestellt am 2024-03-26. Es wird keine Patch-Freigabe vorgenommen, auch nicht für kritische Sicherheitsprobleme. Für bessere Leistung, verbesserte Sicherheit und neue Features aktualisiere auf die neueste Version von GitHub Enterprise Server. Wende dich an den GitHub Enterprise-Support, um Hilfe zum Upgrade zu erhalten.

Konfigurieren der Benutzerbereitstellung mit SCIM für dein Unternehmen

Sie können System for Cross-Domain Identity Management (SCIM) für Ihre GitHub Enterprise Server-Instance konfigurieren. Damit werden automatisch Benutzerkonten bereitgestellt, wenn Sie die Anwendung für Ihre Instanz einem Benutzer auf Ihrem Identitätsanbieter (IdP) zuweisen.

Wer kann dieses Feature verwenden?

Site administrators can configure user provisioning for a GitHub Enterprise Server instance.

Hinweis: SCIM für GitHub Enterprise Server befindet sich derzeit in der privaten Betaphase, Änderungen vorbehalten. Wenn du Zugang zur Betaversion erhalten möchtest, kontaktiere deinen Kundenbetreuer unter Vertriebsteam von GitHub. Geben Sie bitte Feedback in der GitHub Community-Diskussion.

Warnung: Die Betaversion dient ausschließlich zu Testzwecken und zum Erhalt von Feedback, es wird kein Support bereitgestellt. GitHub empfiehlt das Testen mit einer Staginginstanz. Weitere Informationen findest du unter Testinstanz einrichten.

Informationen zur Benutzerbereitstellung für GitHub Enterprise Server

Wenn Sie SAML-SSO (einmaliges Anmelden) für Ihre GitHub Enterprise Server-Instance verwenden, können Sie SCIM so konfigurieren, dass Benutzerkonten automatisch erstellt oder gesperrt werden, und Zugriff auf Ihre Instance gewähren, wenn Sie die Anwendung auf Ihrem IdP zuweisen bzw. die Zuweisung aufheben. Weitere Informationen zu SCIM findest du unter System for Cross-Domain Identity Management: Protokoll (RFC 7644) auf der IETF-Website.

Wenn du die Benutzerbereitstellung nicht mit SCIM konfigurierst, kommuniziert dein IdP nicht automatisch mit GitHub Enterprise Server, wenn du die Anwendung einem Benutzer zuweist oder die Zuweisung aufhebst. Ohne SCIM erstellt GitHub Enterprise Server ein Benutzerkonto mit SAML-JIT-Bereitstellung, wenn eine Benutzerin zum ersten Mal zu GitHub Enterprise Server navigiert und sich mit Authentifizierung durch den IdP anmeldet.

Durch das Konfigurieren der Bereitstellung kann dein IdP mit Ihre GitHub Enterprise Server-Instance kommunizieren, wenn du die Anwendung für GitHub Enterprise Server einem oder einer Benutzerin auf deinem IdP zuweist oder die Zuweisung aufhebst. Wenn du die Anwendung zuweist, fordert der IdP Ihre GitHub Enterprise Server-Instance dazu auf, ein Konto zu erstellen und eine Onboarding-E-Mail an den oder die Benutzerin zu senden. Wenn du die Zuweisung der Anwendung aufhebst, kommuniziert der IdP mit GitHub Enterprise Server, um SAML-Sitzungen ungültig zu machen und das Konto des Mitglieds zu deaktivieren.

Zum Konfigurieren der Bereitstellung für dein Unternehmen musst du die Bereitstellung in GitHub Enterprise Server aktivieren und dann eine Bereitstellungsanwendung beim IdP installieren und konfigurieren.

Die Bereitstellungsanwendung auf dem IdP kommuniziert über die SCIM-API mit GitHub Enterprise Server. Weitere Informationen findest du unter REST-API-Endpunkte für SCIM.

Informationen zu Identitäten und Ansprüchen

Nachdem ein oder eine IdP-Administratorin einer Person Zugriff auf Ihre GitHub Enterprise Server-Instance, kann sich der oder die Benutzerin über den IdP authentifizieren, um mit SAML-SSO auf GitHub Enterprise Server zuzugreifen.

Während der Authentifizierung versucht die Instance, den oder die Benutzer*in einer SAML-Identität zuzuordnen. Standardmäßig vergleicht die Instance den NameID-Anspruch des IdP mit dem Benutzernamen des Kontos. Für den Vergleich normalisiert GitHub Enterprise Server den Wert von NameID. Weitere Informationen zur Normalisierung des Benutzernamens findest du unter Überlegungen zum Benutzernamen für die externe Authentifizierung.

Ist kein Konto mit einem entsprechenden Benutzernamen für die Instanz vorhanden, kann sich der Benutzer nicht anmelden. Für diese Überprüfung vergleicht GitHub Enterprise Server den SAML-Anspruch NameId des Identitätsanbieters für jedes Benutzerkonto, das von SCIM in der Instanz bereitgestellt wurde, mit dem Anspruch username.

Bei der SAML-Authentifizierung verwenden einige Umgebungen möglicherweise nicht NameID als eindeutigen Identifizierungsanspruch, sondern einen anderen Wert. Wenn deine Umgebung nicht NameID verwendet, um Benutzer zu identifizieren, kann ein Websiteadministrator benutzerdefinierte Benutzerattribute für die Instanz konfigurieren. GitHub Enterprise Server berücksichtigt diese Zuordnung beim Konfigurieren von SCIM. Weitere Informationen zur Zuordnung von Benutzerattributen findest du unter „Konfigurieren von SAML Single Sign-On für dein Unternehmen“.

Wenn GitHub Enterprise Server einen Benutzer des Identitätsanbieters erfolgreich identifiziert, Kontodetails wie E-Mail-Adresse, Vorname oder Nachname jedoch nicht übereinstimmen, werden die Details mit Werten des Identitätsanbieters überschrieben. Außerdem werden bis auf die von SCIM bereitgestellte primäre E-Mail-Adresse alle anderen E-Mail-Adressen aus dem Benutzerkonto gelöscht.

Unterstützte Identitätsanbieter

Während der privaten Beta dokumentiert dein Kontoteam die Konfiguration von SCIM für GitHub Enterprise Server für einen unterstützten Identitätsanbieter.

Voraussetzungen

Aktivieren der Benutzerbereitstellung für dein Unternehmen

Um Bereitstellungsaktionen für deine Instanz ausführen zu können, musst du ein dediziertes integriertes Benutzerkonto erstellen und zu einem Unternehmensbesitzer höher stufen.

Nach dem Aktivieren von SCIM auf einer Instanz von GitHub Enterprise Server sind alle Benutzerkonten gesperrt. Das integrierte Benutzerkonto führt weiterhin Bereitstellungsaktionen aus. Nachdem du einem Benutzer Zugriff auf deine Instanz über deinen Identitätsanbieter gewährt hast, kommuniziert der Identitätsanbieter mit der Instanz und verwendet SCIM, um das Konto des Benutzers zu entsperren.

  1. Erstelle ein integriertes Benutzerkonto, um Bereitstellungsaktionen für deine Instanz auszuführen. Weitere Informationen findest du unter Zulassen integrierter Authentifizierung für Benutzer*innen außerhalb deines Anbieters.

  2. Stufe das dedizierte Benutzerkonto auf „Unternehmensbesitzer“ hoch. Weitere Informationen findest du unter Einladen von Personen zum Verwalten deines Unternehmens.

  3. Melde dich bei deiner Instanz als neuer Unternehmensbesitzer an.

  4. Erstelle ein personal access token mit dem Umfang admin:enterprise. Gib kein Ablaufdatum für das personal access token an. Weitere Informationen findest du unter Verwalten deiner persönlichen Zugriffstoken.

    Warnung: Achte darauf, kein Ablaufdatum für das personal access token anzugeben. Wenn du ein Ablaufdatum angibst, funktioniert SCIM nach dem Ablaufdatum nicht mehr.

Hinweis: Dieses personal access token wird zum Testen der SCIM-Konfiguration sowie zum Konfigurieren der Anwendung für SCIM für deinen Identitätsanbieter benötigt. Speichere das Token sicher in einem Kennwort-Manager, bis du das Token später in diesen Anweisungen erneut benötigst.

1. Melde dich über SSH bei Ihre GitHub Enterprise Server-Instance an. Wenn deine Instanz mehrere Knoten umfasst, wenn z. B. Hochverfügbarkeit oder Georeplikation konfiguriert ist, wird SSH im primären Knoten konfiguriert. Wenn du einen Cluster verwendest, kannst du SSH in einen beliebigen Knoten einfügen. Ersetzen Sie HOSTNAME durch den Hostnamen Ihrer Instanz bzw. durch den Hostnamen oder die IP-Adresse eines Knotens. Weitere Informationen findest du unter [AUTOTITLE](/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh).
Shell
ssh -p 122 admin@HOSTNAME
  1. Führe zum Aktivieren von SCIM die Befehle aus, die von deinem oder deiner Konto-Manager*in auf Vertriebsteam von GitHub bereitgestellt wurden.

  2. Warten Sie auf den Abschluss der Konfigurationsausführung.

  3. Um zu überprüfen, ob SCIM betriebsfähig ist, führe die folgenden Befehle aus. Ersetze PAT AUS SCHRITT 3 und DEN HOSTNAMEN DEINER INSTANZ durch tatsächliche Werte.

    $ GHES_PAT="PAT FROM STEP 3"
    $ GHES_HOSTNAME="YOUR INSTANCE'S HOSTNAME"
    $ curl --location --request GET 'https://$GHES_HOSTNAME/api/v3/scim/v2/Users' \
        --header 'Content-Type: application/scim' \
        --header 'Authorization: Bearer $GHES_PAT'
    

    Der Befehl sollte ein leeres Array zurückgeben.

  4. Konfiguriere die Benutzerbereitstellung in der Anwendung für GitHub Enterprise Server für deinen Identitätsanbieter. Die Dokumentation für einen unterstützten Identitätsanbieter kannst du unter Vertriebsteam von GitHub von deinem Konto-Manager anfordern. Wenn dein Identitätsanbieter nicht unterstützt wird, musst du die Anwendung manuell erstellen und SCIM manuell konfigurieren.