Hinweis: Dieser Artikel gilt nur für Enterprise Managed Users. Wenn du GitHub Enterprise Cloud ohne Enterprise Managed Users verwendest, werden Benutzernamen von Benutzer*innen erstellt und nicht von GitHub.
Informationen zu Benutzernamen mit externer Authentifizierung
Wenn du ein Unternehmen mit Enterprise Managed Users verwendest, müssen sich Mitglieder deines Unternehmens authentifizieren, um auf GitHub über deinen SAML-Identitätsanbieter (IdP) zuzugreifen. Weitere Informationen findest du unter Informationen zu Enterprise Managed Users und unter Informationen zur Identitäts- und Zugriffsverwaltung.
GitHub erstellt automatisch einen Benutzernamen für jede Person, wenn ihr Benutzerkonto über SCIM bereitgestellt wird, indem ein Bezeichner normalisiert wird, der von deinem IdP bereitgestellt wird. Anschließend werden ein Unterstrich und Kurzcode hinzugefügt. Wenn mehrere Bezeichner im selben Benutzernamen normalisiert werden, tritt ein Benutzernamenskonflikt auf, und nur das erste Benutzerkonto wird erstellt. Du können Benutzernamenskonflikte lösen, indem du eine Änderung in deinem Identitätsanbieter vornimmst, sodass die normalisierten Benutzernamen eindeutig sind und den Grenzwert von 39 Zeichen einhalten.
Note
Konflikte können nur zwischen Benutzern innerhalb desselben Unternehmens auftreten. Verwaltete Benutzerkonten kann IdP-Bezeichner oder E-Mail-Adressen für andere Benutzerkonten auf GitHub.com freigeben, die sich außerhalb des Unternehmens befinden.
Informationen zu Benutzernamen für verwaltete Benutzerkonten
Wenn deine Unternehmen mit verwalteten Benutzer*innen erstellt wird, wählst du einen Kurzcode aus, der als Suffix für die Benutzernamen der Mitglieder deines Unternehmens verwendet wird. Der kurze Code muss für Ihr Unternehmen eindeutig sein. Es muss sich um eine alphanumerische Zeichenfolge mit drei bis acht Zeichen handeln, die keine Sonderzeichen enthält.
Warning
Der kurze Code wird an das Ende aller Benutzernamen in Ihrem Enterprise-Konto angefügt. Es ist nicht möglich, den kurzen Code zu ändern, nachdem Ihre Unternehmen mit verwalteten Benutzer*innen erstellt wurde. Stellen Sie sicher, dass Sie beim Anfordern Ihres neuen Enterprise-Kontos einen geeigneten Kurzcode auswählen.
Der Setupbenutzer, der SAML-SSO konfiguriert, hat einen Benutzernamen im Format von SHORT-CODE_admin. Wenn der Shortcode Ihres Unternehmens beispielsweise „octo“ lautet, lautet der Setupbenutzer „octo_admin“.
Wenn du neue Benutzer aus deinem Identitätsanbieter bereitstellst, verfügen diese neuen verwaltetes Benutzerkonto über einen GitHub-Benutzernamen im Format @IDP-USERNAME_SHORT-CODE (z. B. „mona-cat_octo“). Die IDP-USERNAME-Komponente wird durch Normalisierung des SCIM-Attributwerts userName
gebildet, der aus dem IdP gesendet wird.
Identitätsanbieter | GitHub-Benutzername |
---|---|
Microsoft Entra ID (früher Azure AD) | Der IDP-USERNAME wird durch Normalisieren der Zeichen erzeugt, die dem Zeichen @ im UPN (Benutzerprinzipalname) vorausgehen, das nicht die #EXT# für Gastkonten enthält. |
Okta | IDP-USERNAME ist das normalisierte Benutzernamensattribut, das vom IdP bereitgestellt wird. |
Diese Regeln können dazu führen, dass dein IdP denselben IDP-USERNAME für mehrere Benutzer bereitstellt. Für Entra ID führen beispielsweise die folgenden UPNs zu demselben Benutzernamen:
bob@contoso.com
bob@fabrikam.com
bob#EXT#fabrikamcom@contoso.com
bob_example#EXT#fabrikamcom@contoso.com
bob_example.com#EXT#fabrikamcom@contoso.com
Dies führt zu einem Benutzernamenskonflikt, und nur der erste Benutzer wird bereitgestellt. Weitere Informationen findest du unter Beheben von Problemen mit Benutzernamen.
Benutzernamen, einschließlich Unterstrich und Kurzcode, dürfen 39 Zeichen nicht überschreiten.
Informationen zur Normalisierung von Benutzernamen
Benutzernamen für Benutzerkonten auf GitHub dürfen nur alphanumerische Zeichen und Bindestriche (-
) enthalten.
Wenn du die SAML-Authentifizierung konfigurierst, verwendet GitHub Enterprise Cloud den Attributwert userName
von SCIM, der vom Identitätsanbieter gesendet wurde, um den Benutzernamen für das entsprechende Benutzerkonto auf GitHub zu bestimmen. Wenn dieser Wert nicht unterstützte Zeichen enthält, normalisiert GitHub Enterprise Cloud den Benutzernamen gemäß der folgenden Regeln.
-
GitHub Enterprise Cloud normalisieren alle nicht-alphanumerischen Zeichen im Benutzernamen deines Kontos in einen Bindestrich. So wird der Benutzername
mona.the.octocat
beispielsweise aufmona-the-octocat
normalisiert. Beachte, dass die normalisierten Benutzernamen weder mit einem Bindestrich beginnen noch darauf enden können. Darüber hinaus können sie nicht zwei aufeinanderfolgende Bindestriche enthalten. -
Aus E-Mail-Adressen erstellte Benutzernamen werden anhand der normalisierten Zeichen erstellt, die dem Zeichen
@
vorangestellt sind. -
Benutzernamen, die anhand von Domänenkonten erstellt wurden, werden aus den normalisierten Zeichen nach dem Trennzeichen
\\
erstellt. -
Wenn mehrere Konten zum selben GitHub Enterprise Cloud-Benutzernamen normalisiert werden, wird nur das erste Benutzerkonto erstellt. Nachfolgende Benutzer mit demselben Benutzernamen können sich nicht anmelden. Weitere Informationen findest du unter Beheben von Problemen mit Benutzernamen."
Beispiele für die Normalisierung von Benutzernamen
Bezeichner des Anbieters | Normalisierter Benutzername für GitHub | Ergebnis |
---|---|---|
The.Octocat | the-octocat_SHORT-CODE | Dieser Benutzername wird erfolgreich erstellt. |
!The.Octocat | -the-octocat_SHORT-CODE | Dieser Benutzername wird nicht erstellt, da er mit einem Bindestrich beginnt. |
The.Octocat! | the-octocat-_SHORT-CODE | Dieser Benutzername wird nicht erstellt, da er mit einem Bindestrich endet. |
The!!Octocat | the--octocat_SHORT-CODE | Dieser Benutzername wird nicht erstellt, da er zwei aufeinanderfolgende Bindestriche enthält. |
The!Octocat | the-octocat_SHORT-CODE | Dieser Benutzername wird nicht erstellt. Obwohl der normalisierte Benutzername gültig ist, ist er bereits vorhanden. |
The.Octocat@example.com | the-octocat_SHORT-CODE | Dieser Benutzername wird nicht erstellt. Obwohl der normalisierte Benutzername gültig ist, ist er bereits vorhanden. |
internal\\The.Octocat | the-octocat_SHORT-CODE | Dieser Benutzername wird nicht erstellt. Obwohl der normalisierte Benutzername gültig ist, ist er bereits vorhanden. |
mona.lisa.the.octocat.from.github.united.states@example.com | mona-lisa-the-octocat-from-github-united-states_SHORT-CODE | Dieser Benutzername wird nicht erstellt, da er den Grenzwert von 39 Zeichen überschreitet. |
Beheben von Problemen mit Benutzernamen
Wenn bei der Bereitstellung eines neuen Benutzers der Benutzername länger als 39 Zeichen ist (einschließlich Unterstrich und Kurzcode) oder mit einem bereits vorhandenen Benutzer im Unternehmen in Konflikt steht, schlägt der Bereitstellungsversuch mit dem Fehler 409
fehl.
Um dieses Problem zu lösen, musst du eine der folgenden Änderungen in deinem Identitätsanbieter vornehmen, damit alle normalisierten Benutzernamen innerhalb der Zeichenobergrenze liegen und eindeutig sind.
- Ändere den Wert des Attributs
userName
für einzelne Benutzer, die Probleme verursachen. - Ändere die Zuordnung des Attributs
userName
für alle Benutzer. - Konfiguriere für alle Benutzer ein benutzerdefiniertes Attribut
userName
.
Wenn du die Attributzuordnung änderst, werden Benutzernamen vorhandener verwaltete Benutzerkonten aktualisiert, jedoch ändert sich nichts weiter an den Konten, auch nicht am Aktivitätsverlauf.
Hinweis: GitHub-Support kann keine Unterstützung beim Anpassen von Attributzuordnungen oder zum Konfigurieren von benutzerdefinierten Ausdrücken bieten. Wenn du diesbezüglich Fragen hast, wende dich an deinen Identitätsanbieter.
Beheben von Problemen mit Benutzernamen mit Entra ID
Um Probleme mit Benutzernamen in Entra ID zu beheben, ändere entweder den Wert des Benutzerprinzipalnamens für den in Konflikt stehenden Benutzer oder die Attributzuordnung für das Attribut userName
. Wenn du die Attributzuordnung ändert, kannst du ein vorhandenes Attribut auswählen oder einen Ausdruck verwenden, um sicherzustellen, dass alle bereitgestellten Benutzer einen eindeutigen normalisierten Alias haben.
- Öffnen Sie in Entra ID die GitHub Enterprise Managed User-Anwendung.
- Klicke auf der linken Randleiste auf Bereitstellung.
- Klicke auf Bereitstellung bearbeiten.
- Erweitern Sie Zuordnungen und klicken Sie dann auf Benutzer der Entra-ID bereitstellen.
- Klicke auf die
userName
-Attributzuordnung von GitHub. - Ändere die Attributzuordnung.
- Wenn Sie ein vorhandenes Attribut in Entra ID dem
userName
-Attribut in GitHub zuordnen möchten, klicken Sie auf das gewünschte Attributfeld. Speichere und warte dann, bis der Bereitstellungszyklus beginnt. Dies sollte innerhalb von ca. 40 Minuten passieren. - Um einen Ausdruck anstelle eines vorhandenen Attributs zu verwenden, ändere den Zuordnungstyp in „Ausdruck“, und füge dann einen benutzerdefinierten Ausdruck hinzu, der diesen Wert für alle Benutzer eindeutig macht. Du kannst beispielsweise
[FIRST NAME]-[LAST NAME]-[EMPLOYEE ID]
verwenden. Weitere Informationen finden Sie unter Referenz zum Schreiben von Ausdrücken für Attributzuordnungen in Microsoft Entra ID auf Microsoft Learn.
- Wenn Sie ein vorhandenes Attribut in Entra ID dem
Beheben von Problemen mit Benutzernamen mit Okta
Um Probleme mit Benutzernamen in Okta zu beheben, aktualisiere die Attributzuordnungseinstellungen für die GitHub Enterprise Managed User-Anwendung.
- Öffne in Okta die GitHub Enterprise Managed User-Anwendung.
- Klicke auf Anmelden.
- Klicke im Abschnitt „Einstellungen“ auf Bearbeiten.
- Aktualisiere das „Format für den Anwendungsbenutzernamen“.