Skip to main content

Об аутентификации на GitHub

Вы можете безопасно получить доступ к ресурсам аккаунта, аутентифицировавшись по GitHub, используя разные учетные данные в зависимости от места аутентификации.

О аутентификации GitHub

Чтобы сохранить безопасность аккаунта, необходимо пройти аутентификацию, прежде чем получить доступ к определённым ресурсам на GitHub. Когда вы аутентифицируетесь, GitHubвы предоставляете или подтверждаете уникальные для вас удостоверения, чтобы доказать, что вы действительно тот, за кого себя выдаёте.

Вы можете получить доступ к своим ресурсам GitHub разными способами: в браузере, GitHub Desktop через настольное приложение, через API или через командную строку. Каждый способ доступа GitHub поддерживает разные способы аутентификации.

  • Ваш поставщик личности (IdP)
  • Имя пользователя и пароль (или социальный вход) с двухфакторной аутентификацией или ключ доступа (GitHub Free, и GitHub Enterprise Cloud только только)
  • Personal access token
  • Ключ SSH

Проверка подлинности в браузере

Если вы являетесь участником корпоративный с управляемыми пользователями, вы будете аутентифицироваться GitHub в браузере с помощью IdP. Для получения дополнительной информации смотрите Сведения о Enterprise Managed Users

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

Примечание.

По состоянию на март 2023 г. GitHub требовал от всех пользователей, которые вносят код на GitHub.com для включения одной или нескольких форм двухфакторной проверки подлинности (2FA). Если бы вы были в соответствующей группе, вы получили бы уведомление по электронной почте, когда эта группа была выбрана для регистрации, помечая начало 45-дневного периода регистрации 2FA, и вы видели бы баннеры, запрашивающие регистрацию в 2FA на GitHub.com. Если вы не получили уведомления, то вы не были частью группы, необходимой для включения 2FA, хотя настоятельно рекомендуется.

Дополнительные сведения о выпуске регистрации 2FA см . в этой записи блога.

Если вам нужно использовать несколько аккаунтов, GitHub.comнапример, личный и сервисный аккаунт, вы можете быстро переключаться между ними, не обязательно повторяя аутентификацию каждый раз. Дополнительные сведения см. в разделе Переключение между учетными записями.

  • Только имя пользователя и пароль

    • Вы создадите пароль, когда создаёте свой аккаунт на GitHub. Рекомендуется использовать диспетчер паролей для создания случайного уникального пароля. Для получения дополнительной информации см. Создание надежного пароля.
    • Если вы не включили 2FA, GitHub можете запросить дополнительную проверку при первом входе с нового или нераспознанного устройства, например, с нового профиля браузера, браузера, где файлы cookie были удалены, или с нового компьютера. Для получения дополнительной информации см. Проверка новых устройств при входе.
  • Социальное имя входа

    • Вы будете аутентифицироваться через Google или Apple, которые являются поддерживаемыми социальными провайдерами входа при создании аккаунта на GitHub. Рекомендуется также настроить 2FA и добавить пароль или пароль в качестве дополнительного механизма восстановления учетной записи.
    • Если у вас есть существующая учетная запись, созданная с помощью пароля, вы можете добавить в учетную запись сообщение электронной почты для входа в социальные сети. Это позволяет использовать ваш социальный логин в качестве замены первого фактора (пароля) при входе в GitHub.
    • Вы можете отвязать свои социальные аккаунты с GitHub страницы настроек электронной почты. Для получения дополнительной информации см. Отмена связывания адреса электронной почты из заблокированной учетной записи
  • Двухфакторная проверка подлинности (рекомендуется)

    • Если вы включите двухфакторную аутентификацию (2FA), после входа в систему с социальным логином или вашим именем пользователя и паролем, вам будет предложено ввести код из приложения одноразового пароля (TOTP) на вашем мобильном устройстве или отправиться в виде текстового сообщения (SMS).

    • После настройки 2FA учетная запись вводит период проверки в течение 28 дней. Вы можете оставить период проверки, успешно выполнив 2FA в течение этих 28 дней. Если вы не выполняете 2FA в этот период, вас попросят выполнить 2FA в рамках одной из ваших существующих GitHub сессий.

    • Если вы не можете выполнить 2FA для прохождения проверки 28-го дня, вам будет предоставлен ярлык, позволяющий перенастроить параметры 2FA. Вам нужно перенастроить настройки, прежде чем вы сможете получить доступ к остальной части GitHub. Для получения дополнительной информации смотрите Доступ к GitHub с помощью двухфакторной аутентификации и Настройка двухфакторной проверки подлинности.

    • В дополнение к аутентификации с помощью TOTP-приложения или текстового сообщения, вы можете по желанию добавить альтернативный способ аутентификации или GitHub Mobile ключ безопасности с помощью WebAuthn. См. использованием или GitHub Mobile.

      Примечание.

      Если вы не можете использовать какие-либо методы восстановления, вы окончательно потеряли доступ к вашей учетной записи. Однако вы можете отменить связь с адресом электронной почты, привязанным к заблокированной учетной записи. Затем несоединяемый адрес электронной почты можно связать с новой или существующей учетной записью. Дополнительные сведения см. в разделе Отмена связывания адреса электронной почты из заблокированной учетной записи.

  • Отмычка

    • Вы можете добавить ключ доступа к учетной записи, чтобы включить безопасное, без пароля имя входа. Секретные ключи соответствуют требованиям к паролям и 2FA, поэтому вы можете выполнить вход с помощью одного шага. См . раздел AUTOTITLE.
  • Единый вход SAML

    • Возможно, что для получения доступа к ресурсам, принадлежащим организации или корпоративной учетной записи, использующей единый вход SAML, вам нужно будет также пройти проверку подлинности с помощью поставщика удостоверений. Для получения дополнительной информации смотрите Сведения о проверке подлинности с помощью единого входа

Файлы cookie сеанса

GitHub использует файлы cookie для предоставления услуг и повышения безопасности. Вы можете ознакомиться с деталями GitHubфайлов cookie 's в АВТОЗАГОЛОВКЕ.

  • Суть.github.com HOSTNAME и базовый используют отдельные куки.
  • GitHub обычно отмечает пользовательскую сессию для удаления после двух недель бездействия.
  • GitHub не удаляет сессию сразу после выхода. Периодически GitHub автоматически удаляет истёкшие сессии.

Аутентификация с помощью GitHub Desktop

Вы можете пройти аутентификацию с GitHub Desktop помощью браузера. Дополнительные сведения см. в разделе Проверка подлинности на GitHub в GitHub Desktop.

Проверка подлинности с помощью API

Проверку подлинности с помощью API можно проходить разными способами. Дополнительные сведения см. в разделе Проверка подлинности в REST API.

Аутентификация в API с помощью personal access token

Если вы хотите использовать GitHub REST API для личного использования, вы можете создать personal access token. Если возможно, GitHub рекомендуется использовать a fine-grained personal access token вместо personal access token (classic). Для получения дополнительной информации о создании personal access token, см. Управление личными маркерами доступа.

Проверка подлинности в API с помощью приложения

Если вы хотите использовать API от имени организации или другого пользователя, GitHub рекомендуется использовать GitHub App. Дополнительные сведения см. в разделе Об аутентификации с помощью приложения GitHub.

Вы также можете создать токен OAuth с OAuth app помощью доступа к REST API. Однако GitHub рекомендуется использовать вместо этого GitHub App . GitHub Apps Это позволяет больше контролировать доступ и разрешения, которые есть приложение.

Аутентификация в API в рабочем GitHub Actions процессе

Если вы хотите использовать API в рабочем GitHub Actions процессе, GitHub рекомендую аутентифицироваться встроенным GITHUB_TOKEN токеном, а не создавать токена. Вы можете предоставить разрешения для GITHUB_TOKEN с помощью ключа permissions.

Обратите внимание, что GITHUB_TOKEN доступ к ресурсам в репозитории, содержащему рабочий процесс, может получить доступ только к ресурсам. Если нужно внести изменения в ресурсы вне репозитория рабочих процессов, потребуется personal access token использовать или GitHub App.

Дополнительные сведения см. в разделе Использование GITHUB_TOKEN для проверки подлинности в рабочих процессах.

Проверка подлинности с помощью командной строки

Доступ к репозиториям GitHub можно получить из командной строки двумя способами — HTTPS и SSH, и оба способа аутентификации отличаются. Метод проверки подлинности зависит от того, выбрали ли вы удаленный URL-адрес HTTPS или SSH при клонировании репозитория. Дополнительные сведения о том, какой способ доступа можно получить, см. в разделе Сведения об удаленных репозиториях.

HTTPS

Вы можете работать со всеми репозиториями по GitHub HTTPS, даже если вы за межсетевым экраном или прокси.

Если вы аутентифицируете с GitHub CLIпомощью , вы можете либо аутентификовать с помощью a, personal access token либо через веб-браузер. Для получения дополнительной информации об аутентификации с GitHub CLIпомощью см. gh auth login.

Если вы аутентифицируете без GitHub CLI, вы должны аутентифицироваться с personal access token. Когда Git запрашивает пароль, введите personal access token. Кроме того, можно использовать вспомогательный компонент учетных данных, например диспетчер учетных данных Git. Проверка подлинности на основе паролей для Git была удалена в пользу более безопасных методов проверки подлинности. Дополнительные сведения см. в разделе Управление личными маркерами доступа. Каждый раз, когда вы используете Git для аутентификации GitHub, вас попросят ввести учетные данные, если только вы не кэшируете их с помощью помощника учетных данных.

SSH

Можно работать со всеми репозиториями по GitHub SSH, хотя файрволы и прокси могут отказать в SSH-соединениях.

Если вы аутентифицируете с GitHub CLIпомощью , CLI найдёт SSH-публичные ключи на вашем компьютере и предложит выбрать один для загрузки. Если GitHub CLI не найдётся SSH-публичный ключ для загрузки, он может сгенерировать новую пару публичных/приватных ключей SSH и загрузить публичный ключ в ваш аккаунт на GitHub.com. Затем вы можете либо аутентифицироваться через браузер, personal access token либо через веб-браузер. Для получения дополнительной информации об аутентификации с GitHub CLIпомощью см. gh auth login.

Если вы аутентифицируете без GitHub CLI, вам нужно будет сгенерировать пару публичных/приватных ключей SSH на вашем локальном компьютере и добавить открытый ключ в аккаунт на GitHub.com. Дополнительные сведения см. в разделе Создание нового ключа SSH и его добавление в ssh-agent. Каждый раз, когда вы используете Git для аутентификации GitHub, вам попросят ввести пароль SSH-ключа, если только вы не сохранили ключ.

Авторизация для единого входа SAML

Чтобы использовать personal access token SSH-ключ для доступа к ресурсам, принадлежащим организации, использующей SAML single sign-on, необходимо также авторизовать личный токен или SSH-ключ. Для получения дополнительной информации смотрите Авторизация личного маркера доступа для использования с единым входом или Авторизация ключа SSH для использования с единым входом

GitHubформаты токенов

GitHub выдаёт жетоны, начинающиеся с префикса, указывающих тип токена.

Примечание.

Начиная с 27 апреля 2026 года, GitHub началось поэтапное внедрение формата без состояния (ghs_APPID_JWT) для всех недавно выпущенных GitHub App токенов установки, что сделало их более производительными и повысило надёжность поверхности нашего API. Если ваше приложение ожидает или полагается на то, что установочные токены будут ровно 40 символов, оно может неправильно обрабатывать этот новый формат токенов. Теперь вы можете проверять свои приложения и рабочие процессы, используя временный заголовок запроса, который позволяет активировать формат токена по запросу. Для получения дополнительной информации о временном заголовке смотрите GitHub блог.

Тип токенаПрефиксДополнительные сведения
Personal access token (classic)ghp_
Управление личными маркерами доступа
Fine-grained personal access tokengithub_pat_
Управление личными маркерами доступа
Маркер доступа OAuthgho_
Авторизация приложений OAuth
Пользовательский токен доступа для GitHub Appghu_
Аутентификация с помощью приложения GitHub от имени пользователя
Токен доступа установки для GitHub Appghs_
Аутентификация как установка приложения GitHub
Жетон обновления для GitHub Appghr_
Обновление маркеров доступа пользователей

Для получения дополнительной информации GitHubо типах токенов и их управлении см. AUTOTITLE.