Skip to main content
GitHub AEは、現在限定リリース中です。詳細については営業チームにお問い合わせください。

Username considerations for external authentication

GitHub AE follows certain rules to determine the username for each user account in your enterprise.

About usernames with external authentication

GitHub AE uses SAML SSO for authentication, and automatically creates a username for each person when the person signs in through your identity provider (IdP) for the first time.

Usernames must not exceed 39 characters.

About username normalization

Usernames for user accounts on GitHub AE can only contain alphanumeric characters and dashes (-).

When you configure SAML authentication, GitHub AE uses an identifier from the user account on your IdP to determine the username for the corresponding user account on GitHub AE. If the identifier includes unsupported characters, GitHub AE will normalize the username per the following rules.

  1. GitHub AEは、アカウントのユーザ名に含まれている非英数字をダッシュに変換します。 For example, a username of mona.the.octocat will be normalized to mona-the-octocat. 変換されたユーザ名の先頭及び末尾はダッシュであってはならないことに注意してください。 2つの連続するダッシュを含めることもできません。

  2. メールアドレスから作成されたユーザ名は、@以前の文字を変換して作成されます。

  3. 複数のアカウントが変換後に同じGitHub AEのユーザ名になる場合、最初のユーザアカウントだけが作成されます。 同じユーザ名のそれ以降のユーザは、サインインできません。

Examples of username normalization

Identifier on providerNormalized username on GitHub結果
The!Octocatthe-octocatこのユーザ名は作成されません。 変換されたユーザ名は正当ですが、すでに存在しています。
The.Octocat@example.comthe-octocatこのユーザ名は作成されません。 変換されたユーザ名は正当ですが、すでに存在しています。
mona.lisa.the.octocat.from.github.united.states@example.commona-lisa-the-octocat-from-github-united-statesThis username is not created, because it exceeds the 39-character limit.

About username normalization with SAML

GitHub AE determines each person's username by one of the following assertions in the SAML response, ordered by descending priority.

  1. The custom username attribute, if defined and present
  2.アサーション (存在する場合)
  3.アサーション (存在する場合)
  4. NameID要素

GitHub AE requires the NameID element even if other attributes are present. For more information, see "SAML configuration reference."

GitHub AE creates a mapping between the NameID from the IdP and the username in Enterprise, so the NameID should be persistent, unique, and not subject to change for the lifecycle of the user.