Skip to main content
We publish frequent updates to our documentation, and translation of this page may still be in progress. For the most current information, please visit the English documentation.

Überlegungen zum Benutzernamen für die externe Authentifizierung

Wenn du Enterprise Managed Users, befolgt GitHub Enterprise Cloud bestimmte Regeln, um den Benutzernamen für jedes Benutzerkonto in deinem Unternehmen.

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 Informationen zur Authentifizierung für dein Unternehmen.

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.

Hinweis: Da GitHub beim Erstellen von Benutzernamen einen Unterstrich und Kurzcode zu dem von deinem IdP bereitgestellten normalisierten Bezeichner hinzufügt, können Konflikte nur in einem einzelnen enterprise with managed users auftreten. Managed user accounts 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 managed user accounts

Wenn deine enterprise with managed users 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. Der Setupbenutzer, der SAML-SSO konfiguriert, hat einen Benutzernamen im Format von @SHORT-CODE_admin.

Wenn du einen neuen Benutzer aus deinem Identitätsanbieter bereitstellst, verfügt der neue managed user account über einen GitHub-Benutzernamen im Format von @IDP-USERNAME_SHORT-CODE . Die IDP-USERNAME-Komponente wird durch Normalisierung des SCIM-Attributwerts userName gebildet, der aus dem IdP gesendet wird.

IdentitätsanbieterGitHub-Benutzername
Azure Active Directory (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.
OktaIDP-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 Azure AD führen beispielsweise die folgenden UPNs zu demselben Benutzernamen:

  • bob@contoso.com
  • bob@fabrikam.com
  • bob#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.com 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.com zu bestimmen. Wenn dieser Wert nicht unterstützte Zeichen enthält, normalisiert GitHub Enterprise Cloud den Benutzernamen gemäß der folgenden Regeln.

  1. GitHub Enterprise Cloud normalisieren alle nicht-alphanumerischen Zeichen im Benutzernamen deines Kontos in einen Bindestrich. So wird der Benutzername mona.the.octocat beispielsweise auf mona-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.

  2. Aus E-Mail-Adressen erstellte Benutzernamen werden anhand der normalisierten Zeichen erstellt, die dem Zeichen @ vorangestellt sind.

  3. Benutzernamen, die anhand von Domänenkonten erstellt wurden, werden aus den normalisierten Zeichen nach dem Trennzeichen \\ erstellt.

  4. 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 AnbietersNormalisierter Benutzername für GitHubErgebnis
The.Octocatthe-octocat_SHORT-CODEDieser Benutzername wird erfolgreich erstellt.
!The.Octocat-the-octocat_SHORT-CODEDieser Benutzername wird nicht erstellt, da er mit einem Bindestrich beginnt.
The.Octocat!the-octocat-_SHORT-CODEDieser Benutzername wird nicht erstellt, da er mit einem Bindestrich endet.
The!!Octocatthe--octocat_SHORT-CODEDieser Benutzername wird nicht erstellt, da er zwei aufeinanderfolgende Bindestriche enthält.
The!Octocatthe-octocat_SHORT-CODEDieser Benutzername wird nicht erstellt. Obwohl der normalisierte Benutzername gültig ist, ist er bereits vorhanden.
The.Octocat@example.comthe-octocat_SHORT-CODEDieser Benutzername wird nicht erstellt. Obwohl der normalisierte Benutzername gültig ist, ist er bereits vorhanden.
internal\\The.Octocatthe-octocat_SHORT-CODEDieser Benutzername wird nicht erstellt. Obwohl der normalisierte Benutzername gültig ist, ist er bereits vorhanden.
mona.lisa.the.octocat.from.github.united.states@example.commona-lisa-the-octocat-from-github-united-states_SHORT-CODEDieser 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 managed user accounts 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 Azure AD

Um Probleme mit Benutzernamen in Azure AD 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.

  1. Öffne in Azure AD die GitHub Enterprise Managed User-Anwendung.
  2. Klicke auf der linken Randleiste auf Bereitstellung.
  3. Klicke auf Bereitstellung bearbeiten.
  4. Erweitere Zuordnungen, und klicke dann auf Azure Active Directory-Benutzer bereitstellen.
  5. Klicke auf die userName-Attributzuordnung von GitHub.
  6. Ändere die Attributzuordnung.
    • Wenn du ein vorhandenes Attribut in Azure AD dem userName-Attribut in GitHub zuordnen möchtest, klicke 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 findest du in der Referenz zum Schreiben von Ausdrücken für Attributzuordnungen in Azure Active Directory.

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.

  1. Öffne in Okta die GitHub Enterprise Managed User-Anwendung.
  2. Klicke auf Anmelden.
  3. Klicke im Abschnitt „Einstellungen“ auf Bearbeiten.
  4. Aktualisiere das „Format für den Anwendungsbenutzernamen“.