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.

Поддержка этой версии GitHub Enterprise была прекращена 2023-01-18. Исправления выпускаться не будут даже при критических проблемах безопасности. Для повышения производительности, укрепления безопасности и новых функций установите последнюю версию GitHub Enterprise. Чтобы получить справку по обновлению, обратитесь в службу поддержки GitHub Enterprise.

Рекомендации по использованию имени пользователя для внешней проверки подлинности

При использовании CAS, LDAP или SAML для проверки подлинности GitHub Enterprise Server следует установленным правилам для определения имени пользователя в каждой учетной записи пользователя в вашем экземпляре.

Сведения об использовании имен пользователей с внешней проверкой подлинности

Вы можете настроить внешнюю проверку подлинности для GitHub Enterprise Server с использованием CAS, LDAP или SAML. Дополнительные сведения см. в разделе Сведения о проверке подлинности для предприятия.

При использовании внешней проверки подлинности your GitHub Enterprise Server instance автоматически создает имя пользователя для каждого пользователя при первом входе пользователя в your GitHub Enterprise Server instance через внешнюю систему проверки подлинности.

Длина имен пользователей не должна превышать 39 символов.

Сведения о нормализации имен пользователей

Имена пользователей для учетных записей пользователей в GitHub Enterprise Server могут содержать только буквенно-цифровые символы и тире (-).

Когда вы настраиваете проверку подлинности CAS, LDAP или SAML, GitHub Enterprise Server использует идентификатор из учетной записи пользователя вашего внешнего поставщика проверки подлинности, чтобы определить имя пользователя для соответствующей учетной записи пользователя в GitHub Enterprise Server. Если идентификатор содержит неподдерживаемые символы, GitHub Enterprise Server нормализует имя пользователя в соответствии со следующими правилами.

  1. GitHub Enterprise Server преобразует любой небуквенно-цифровой символ в имени пользователя вашей учетной записи в тире. Например, имя пользователя mona.the.octocat будет нормализовано до mona-the-octocat. Обратите внимание, что нормализованные имена пользователей также не могут начинаться или заканчиваться дефисом. Они также не могут содержать два последовательных тире.

  2. Имена пользователей, созданные на основе адресов электронной почты, создаются на основе нормализованных символов, предшествующих символу @.

  3. Имена пользователей, созданные из учетных записей домена, создаются из нормализованных символов после \\ разделителя.

  4. Если несколько учетных записей нормализуются в одно и то же имя пользователя GitHub Enterprise Server, создается только первая учетная запись пользователя. Последующие пользователи с тем же именем пользователя не смогут войти в систему.

Примеры нормализации имен пользователей

Идентификатор поставщикаНормализованное имя пользователя в GitHubРезультат
The.Octocatthe-octocatЭто имя пользователя успешно создано.
!The.Octocat-the-octocatЭто имя пользователя не создается, поскольку начинается с дефиса.
The.Octocat!the-octocat-Это имя пользователя не создается, поскольку заканчивается дефисом.
The!!Octocatthe--octocatЭто имя пользователя не создается, поскольку содержит два последовательных дефиса.
The!Octocatthe-octocatЭто имя пользователя не создается. Хотя нормализованное имя пользователя является допустимым, оно уже существует.
The.Octocat@example.comthe-octocatЭто имя пользователя не создается. Хотя нормализованное имя пользователя является допустимым, оно уже существует.
internal\\The.Octocatthe-octocatЭто имя пользователя не создается. Хотя нормализованное имя пользователя является допустимым, оно уже существует.
mona.lisa.the.octocat.from.github.united.states@example.commona-lisa-the-octocat-from-github-united-statesЭто имя пользователя не создается, так как оно превышает ограничение в 39 символов.

Сведения о нормализации имен пользователей с использованием SAML

Если вы настроите проверку подлинности SAML для your GitHub Enterprise Server instance, GitHub Enterprise Server определяет имя пользователя каждого пользователя по одному из следующих утверждений в ответе SAML, упорядоченных по убыванию приоритета.

  1. Настраиваемый атрибут username, если он определен и присутствует
  2. Утверждение http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name, если оно присутствует
  3. Утверждение http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress, если оно присутствует
  4. элемент NameID;

GitHub Enterprise Server требует элемент NameID, даже если присутствуют другие атрибуты. Дополнительные сведения см. в разделе Справочник по конфигурации SAML.

GitHub Enterprise Server создает сопоставление между NameID из поставщика удостоверений и именем пользователя на your GitHub Enterprise Server instance, поэтому NameID объект должен быть постоянным, уникальным и не подлежит изменению в течение жизненного цикла пользователя.

Примечание. Если NameID для пользователя изменится в поставщике удостоверений, пользователь увидит сообщение об ошибке при входе в your GitHub Enterprise Server instance. Чтобы восстановить доступ пользователя, вам необходимо обновить сопоставление NameID учетной записи пользователя. Дополнительные сведения см. в разделе Обновление SAML NameID пользователя.