Sobre nomes de usuário com autenticação externa
Você pode configurar a autenticação externa para GitHub Enterprise Server, usando o CAS, LDAP ou SAML. Para obter mais informações, consulte "Sobre a autenticação para sua empresa".
Ao usar a autenticação externa, your GitHub Enterprise Server instance cria automaticamente um nome de usuário para cada pessoa quando esta efetua o login em your GitHub Enterprise Server instance por meio do seu sistema de autenticação externa pela primeira vez.
Os nomes de usuário não deve exceder 39 caracteres.
Sobre a normalização de usuário
Os nomes de usuário para contas de usuário em GitHub Enterprise Server podem conter apenas caracteres alfanuméricos e traços (-
).
Ao configurar o CAS, LDAP ou autenticação SAML, GitHub Enterprise Server usa um identificador da conta do usuário no provedor de autenticação externo para determinar o nome de usuário correspondente em GitHub Enterprise Server. Se o identificador incluir caracteres não compatíveis, GitHub Enterprise Server normalizará o nome de usuário para cada uma das seguintes regras.
-
GitHub Enterprise Server 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 de
mona.the.octocat
será normalizado paramona-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. -
Nomes de usuário criados a partir de endereços de e-mail são criados a partir dos caracteres normalizados que precedem o caractere
@
. -
Se várias contas forem normalizadas para o mesmo nome de usuário GitHub Enterprise Server, será criada apenas a primeira conta de usuário. 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 provedor | Nome de usuário normalizado em GitHub | Resultado |
---|---|---|
The.Octocat | the-octocat | Nome de usuário criado com sucesso. |
!The.Octocat | -the-octocat | Este 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!!Octocat | the--octocat | Este nome de usuário não é criado, porque contém dois traços consecutivos. |
The!Octocat | the-octocat | Este nome de usuário não é criado. Embora o nome de usuário normalizado seja válido, ele já existe. |
The.Octocat@example.com | the-octocat | Este 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.com | mona-lisa-the-octocat-from-github-united-states | Este nome de usuário não é criado, porque excede o limite de 39 caracteres. |
Sobre a normalização de usuário com SAML
Se você configurar a autenticação do SAML para your GitHub Enterprise Server instance, GitHub Enterprise Server determinará o nome de usuário de cada pessoa por uma das seguintes afirmações na resposta SAML, em ordem decrescente.
- O atributo
de nome de usuário
personalizado, se definido e presente - Declaração
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
, se houver; - Declaração
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
, se houver; - Elemento
NameID
.
GitHub Enterprise Server exige o elemento NameID
mesmo que outros atributos estejam presentes. Para obter mais informações, consulte "Referência de configuração do SAML".
GitHub Enterprise Server cria um mapeamento entre NameID
do IdP e o nome de usuário em your GitHub Enterprise Server instance. Portanto, o NameID
deve ser persistente, único e não sujeito a alterações para o ciclo de vida do usuário.
Observação: Se o NameID
para um usuário for alterado no IdP, a pessoa verá uma mensagem de erro ao efetuar o login em your GitHub Enterprise Server instance. Para restaurar o acesso da pessoa, você deverá atualizar o mapeamento de NameID
da conta do usuário. Para obter mais informações, consulte "Atualizando NameID
do SAML de um usuário."