Teamsynchronisierung
Wenn Ihr Unternehmen Microsoft Entra-ID oder Okta als Identitätsanbieter (IdP) verwendet, können Sie die GitHub-Teammitgliedschaft über die Teamsynchronisierung verwalten. Wenn diese Option aktiviert ist, spiegelt die Teamsynchronisierung automatisch Änderungen in IdP-Gruppen auf GitHub wider, wodurch die Notwendigkeit manueller Updates oder benutzerdefinierter Skripts reduziert wird. Dieser zentralisierte Ansatz vereinfacht das Onboarding, die Berechtigungsverwaltung und die Zugriffssperrung.
| Merkmal | Beschreibung |
|---|---|
| Synchronisieren von Benutzern | Beibehalten der Ausrichtung von GitHub Teams an der Gruppenmitgliedschaft des Identitätsanbieters (z. B. Active Directory) |
| Synchronisieren im neuen Team | Automatisches Auffüllen von Teams bei der Erstellung |
| Benutzerdefinierte Teamzuordnung | Verwenden Sie syncmap.yml, um benutzerdefinierte Zuordnungen zwischen Teamdatenfeldern und Gruppennamen zu definieren. |
| Dynamische Konfiguration | Verwenden einer settings Datei zum Ableiten von Synchronisierungseinstellungen aus der Verzeichnisstruktur |
Anwendungsfälle für die Teamsynchronisierung
Die Teamsynchronisierung eignet sich ideal für Unternehmen, die die Mitgliedschaftsverwaltung in GitHub-Organisationen optimieren möchten. Administratoren können GitHub-Teams idP-Gruppen zuordnen und Mitgliedschaften automatisch verwalten. Dies ist nützlich für:
- Einarbeitung neuer Mitarbeitenden
- Anpassen des Zugriffs, wenn Benutzer zwischen Teams wechseln
- Entfernen von Benutzern, die die Organisation verlassen
⚠– Um die Teamsynchronisierung zu verwenden, muss Ihr IdP-Administrator SAML SSO und SCIM aktivieren.
Unternehmensverwaltete Benutzer und GitHub Enterprise Server
Die Teamsynchronisierung ist auch für Organisationen und Unternehmenskonten verfügbar, die GitHub Enterprise Cloud oder GitHub Enterprise Server (GHE.com) verwenden. Dies ist die bevorzugte Lösung in Regionen, in denen sie aus Compliancegründen verfügbar oder erforderlich ist.
Verwaltete Benutzer (Enterprise Managed Users, EMUs) sind ein GitHub Enterprise Cloud-Feature, mit dem Unternehmen die vollständige Kontrolle über die Benutzeridentität und den Kontolebenszyklus erhalten. Mit EMUs werden GitHub-Konten vollständig vom Identitätsanbieter des Unternehmens (IdP) verwaltet. Dies bedeutet, dass sich Benutzer nicht manuell für GitHub registrieren – alle Benutzerbereitstellungen, Zugriff und Offboarding werden über Tools wie Microsoft Entra ID oder Okta automatisiert.
EMUs eignen sich ideal für Organisationen mit strengen Compliance-, Überwachungs- oder Benutzergovernanceanforderungen. Sie tragen dazu bei, folgendes zu gewährleisten:
- Alle Konten befinden sich im Besitz des Unternehmens.
- Der Zugriff wird basierend auf der IdP-Mitgliedschaft automatisch gewährt oder entfernt.
- Keine externe Zusammenarbeit geschieht unbeabsichtigt
Bei Verwendung von EMUs:
- Verwaltete Benutzer können keinen Code an Repositorys außerhalb des Unternehmens übertragen oder verzweigen.
- Sie können nur mit anderen Benutzern und Ressourcen innerhalb des Unternehmens interagieren.
Sie können EMU-basierte Organisation und Teammitgliedschaft mithilfe von Gruppen in Ihrem IdP verwalten und optional die Teamsynchronisierung integrieren, um die Zuordnung von Gruppen zu Team zu automatisieren.
Für Organisationen mit Anforderungen rund um selbsthosting oder bestimmte regionale Vorschriften bietet GitHub Enterprise Server (GHE.com) eine lokale Lösung, mit der Sie die vollständige Kontrolle über Ihre GitHub-Umgebung behalten können.
Weitere Informationen finden Sie unter "Erste Schritte mit GitHub Enterprise Cloud " und "About GitHub Enterprise Server".
Teamsynchronisierung im Vergleich zu SCIM für GHES
In GitHub Enterprise Server (GHES) können Benutzerzugriffs- und Teammitgliedschaften über verschiedene Methoden wie die Teamsynchronisierung und das System für domänenübergreifende Identitätsverwaltung (SCIM) verwaltet werden. Das Verständnis dieser Methoden ist für eine effektive Verwaltung unerlässlich.
Teamsynchronisierung in GHES
Mit der Teamsynchronisierung können Sie GitHub-Teams mit Gruppen in Ihrem Identitätsanbieter (IdP) verknüpfen. Diese Integration stellt sicher, dass alle Änderungen in der IdP-Gruppe , z. B. das Hinzufügen oder Entfernen von Mitgliedern, automatisch im entsprechenden GitHub-Team angezeigt werden. Dieser Ansatz optimiert die Teamverwaltung, indem die Benutzerzugriffskontrolle innerhalb des IdP zentralisiert wird.
Es ist jedoch wichtig zu beachten, dass die Teamsynchronisierung kein Benutzerbereitstellungsdienst ist und meistens keine Nicht-Mitglieder einlädt, Organisationen beizutreten. Daher wird ein Benutzer nur erfolgreich zu einem Team hinzugefügt, wenn er bereits Mitglied der Organisation ist.
Betrachten Sie das folgende Szenario, um zu verstehen, wie die Teamsynchronisierung in der Praxis funktioniert:
- Wenn die Azure AD-Gruppe "DevOps Engineers" dem GitHub-Team "DevOps" zugeordnet ist
- Wenn Alice der IdP-Gruppe hinzugefügt wird, wird sie automatisch dem GitHub-Team hinzugefügt.
- Wenn sie die Gruppe verlässt, → automatisch aus dem Team entfernt
Hinweis
Die Teamsynchronisierung in GHES stellt keine Konten bereit. Benutzer müssen bereits GitHub-Organisationsmitglieder sein.
Aktivieren von Teamsynchronisierung
- Aktivieren Sie einmaliges Anmelden (Single Sign-On, SSO) über SAML (Security Assertion Markup Language) und SCIM in Ihrem Identitätsanbieter.
- Zuordnen von GitHub-Teams zu IdP-Gruppen über GitHub-UI oder API.
- Änderungen bei der Gruppenmitgliedschaft werden automatisch mit GitHub synchronisiert.
Unterstützte Identitätsanbieter:
- Microsoft Entra-ID: Erfordert Berechtigungen für profillese- und Verzeichniszugriff.
- Okta: Erfordert SAML-SSO, SCIM, Mandanten-URL und ein SSWS-Token (Single Sign-On for Web Systems, Einmaliges Anmelden für Websystem) mit schreibgeschütztem Administratorzugriff.
Deaktivieren von Teamsynchronisierung
So wird deaktiviert
- Navigieren Sie zu Einstellungen>Organisationssicherheit
- Klicken Sie auf "Teamsynchronisierung deaktivieren".
Hinweis
Durch deaktivieren der Synchronisierung werden Benutzer aus Teams entfernt, wenn sie über die IdP-Zuordnung hinzugefügt wurden.
SCIM in GHES
SCIM ist ein offenes Standardprotokoll, das den Austausch von Benutzeridentitätsinformationen zwischen Identitätsdomänen und IT-Systemen automatisiert. Im Kontext von GHES ermöglicht SCIM Administratoren die Bereitstellung, Aktualisierung und Deprovision von Benutzerkonten direkt über die GitHub-API. Dies bedeutet, dass Sie Benutzerkonten erstellen, aktualisieren und löschen und Gruppeninformationen synchronisieren können, um GitHub-Teammitgliedschaften zuzuordnen.
SCIM ist nützlich für die Verwaltung von Benutzerlebenszyklus im Großen und Ganzen, um sicherzustellen, dass Benutzerdaten auf allen Systemen konsistent bleiben.
Betrachten Sie das folgende Szenario, um zu verstehen, wie SCIM in der Praxis funktioniert:
- Okta SCIM-Integration versorgt GitHub-Benutzer automatisch
- Bob wird zu Okta hinzugefügt, → GitHub-Konto bereitgestellt wird
- Bob ändert Rollen → Zugriff und Teams-Update
- Bob verlässt das Unternehmen → Die Bereitstellung des Kontos wird aufgehoben.
Hauptvorteil: Vollständige Automatisierung für die Verwaltung des Kontolebenszyklus.
Teamsynchronisierung im Vergleich zu Gruppen-SCIM
GitHub unterstützt zwei Primäre Identitätsintegrationsansätze:
- Teamsynchronisierung: Konzentriert sich auf die Synchronisierung der Gruppenmitgliedschaft mit GitHub-Teams
- Group SCIM: Fokussiert auf die vollständige Lebenszyklusverwaltung von Benutzern und Gruppen
Unterschiede zwischen Teamsynchronisierung und Gruppen-SCIM
| Merkmal | Teamsynchronisierung | Gruppen-SCIM |
|---|---|---|
| Fokus | Zuordnung auf Teamebene | Benutzer- und Gruppenbereitstellung |
| Konfiguration | Manuelle Zuordnung von Gruppen zu Teams | Automatisiert über SCIM-Konfiguration des Identitätsanbieters |
| Automatisierungsebene | Synchronisiert nur gruppenmitgliedschaft | Vollständige Lebenszyklusautomatisierung |
| Idealer Anwendungsfall | GitHub Teams-Verwaltung | Große Organisationen mit hoher Benutzerfluktuation |
| Aufheben der Bereitstellung | Manuell oder von der Gruppe des Identitätsanbieters abhängig | Vollautomatisiert |
| Identitätsmodell | Klassisch | Verwaltete Benutzer |
Auswählen des richtigen Ansatzes
Die Wahl zwischen Teamsynchronisierung und Gruppen-SCIM hängt von den Anforderungen, der Größe und der vorhandenen Identitätsverwaltungsinfrastruktur Ihrer Organisation ab:
| Anwendungsfall | Empfohlene Lösung |
|---|---|
| Verwalten des Repositoryzugriffs nach Teams | Teamsynchronisierung |
| Automatisieren des Benutzerlebenszyklus | Gruppen-SCIM |
| Vollständige auf dem identitätsanbieter basierende Governance erforderlich | Gruppen-SCIM |
| GitHub Teams ist der Kern des Workflows. | Teamsynchronisierung |
Nutzungsgrenzwerte
Beachten Sie bei der Verwendung der Teamsynchronisierung die folgenden Grenzwerte:
- Max. Mitglieder pro Team: 5.000
- Max. Mitglieder pro Organisation: 10.000
- Max. Teams pro Organisation: 1.500
Das Überschreiten dieser Grenzen kann zu Leistungsproblemen oder Synchronisierungsfehlern führen.