Skip to main content

Atualmente o GitHub AE está em versão limitada.

Considerações de nome de usuário para autenticação externa

GitHub AE segue certas regras para determinar o nome de usuário para cada conta de usuário em sua empresa.

Sobre nomes de usuário com autenticação externa

O GitHub AE usa o SSO do SAML para autenticação e cria automaticamente um nome de usuário para cada pessoa quando a ela entra por meio de seu IdP (provedor de identidade) pela primeira vez.

Nomes de usuário não devem exceder 39 caracteres.

Sobre a normalização de nome de usuário

Nomes de usuário de contas de usuário no GitHub AE só podem conter caracteres alfanuméricos e traços (-).

Quando você configura a autenticação por SAML, o GitHub AE usa um identificador da conta de usuário em seu IdP para determinar o nome de usuário da conta de usuário correspondente no GitHub AE. Se o identificador incluir caracteres sem suporte, o GitHub AE normalizará o nome de usuário de acordo com as regras a seguir.

  1. O GitHub AE normalizará qualquer caractere não alfanumérico do nome de usuário da sua conta em um traço. Por exemplo, um nome de usuário mona.the.octocat será normalizado como mona-the-octocat. Observe que nomes de usuários normalizados também não podem iniciar ou terminar com um traço. Eles também não podem conter dois traços consecutivos.

  2. Nomes de usuário criados com base em endereços de email são criados com caracteres normalizados que precedem o caractere @.

  3. Os nomes de usuário criados a partir de contas de domínio são criados com base nos caracteres normalizados após o separador \\.

  4. Se várias contas forem normalizadas no mesmo nome de usuário do GitHub AE apenas a primeira conta de usuário será criada. Usuários subsequentes com o mesmo nome de usuário não serão capazes de fazer o login.

Exemplos de normalização de nome de usuário

Identificador no provedorNome de usuário normalizado no GitHubResult
The.Octocatthe-octocatNome de usuário criado com sucesso.
!The.Octocat-the-octocatEste nome de usuário não é criado, porque começa com um traço.
The.Octocat!the-octocat-Este nome de usuário não é criado, porque termina com um traço.
The!!Octocatthe--octocatEste nome de usuário não é criado, porque contém dois traços consecutivos.
The!Octocatthe-octocatEste nome de usuário não é criado. Embora o nome de usuário normalizado seja válido, ele já existe.
The.Octocat@example.comthe-octocatEste nome de usuário não é criado. Embora o nome de usuário normalizado seja válido, ele já existe.
internal\\The.Octocatthe-octocatEste nome de usuário não é criado. Embora o nome de usuário normalizado seja válido, ele já existe.
mona.lisa.the.octocat.from.github.united.states@example.commona-lisa-the-octocat-from-github-united-statesEsse nome de usuário não é criado, pois excede o limite de 39 caracteres.

Sobre a normalização de nome de usuário com o SAML

GitHub AE determinará o nome de usuário de cada pessoa por uma das seguintes declarações na resposta SAML, ordenada por prioridade decrescente.

  1. O atributo personalizado username, se definido e estiver presente
  2. Uma declaração http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name, se presente
  3. Uma declaração http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress, se presente
  4. O elemento NameID

O GitHub AE exige o elemento NameID mesmo se outros atributos estiverem presentes. Para obter mais informações, confira "Referência de configuração do SAML".

O GitHub AE cria um mapeamento entre o NameID do IdP e o nome de usuário in sua empresa, portanto, a NameID devem ser persistente, exclusiva e não sujeita a alterações no ciclo de vida do usuário.