Skip to main content

Обновление маркеров доступа пользователей

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

Сведения о маркерах доступа пользователей, срок действия которого истекает

Примечание. Срок действия маркеров доступа пользователей в настоящее время является необязательным и подлежит изменению. Дополнительные сведения см. в статье Ограничение срока действия маркеров доступа пользователей к серверу для приложений GitHub.

Чтобы обеспечить регулярное поворот маркера и уменьшить влияние скомпрометированного маркера, можно настроить GitHub App для использования маркеров доступа пользователей, которые истекают. Если приложение использует маркеры доступа пользователей, срок действия которого истекает, вы получите маркер обновления при создании маркера доступа пользователя. Срок действия маркера доступа пользователя истекает через восемь часов, а срок действия маркера обновления истекает через шесть месяцев. Дополнительные сведения см. в разделе Создание маркера доступа пользователя для приложения GitHub.

Маркер обновления можно использовать для создания нового маркера доступа пользователей и нового маркера обновления. После использования маркера обновления этот маркер обновления и старый маркер доступа пользователя больше не будет работать.

Если срок действия маркера обновления истекает до его использования, вы можете повторно создать маркер доступа пользователя и маркер обновления, отправив пользователей через поток веб-приложения или поток устройства. Дополнительные сведения см. в разделе Создание маркера доступа пользователя для приложения GitHub.

Настройка приложения для использования маркеров доступа пользователей, срок действия которого истекает

При создании приложения срок действия маркеров доступа пользователей включен, если вы не откажетесь. Дополнительные сведения см. в разделе "Регистрация приложения GitHub". Вы также можете настроить этот параметр после создания приложения.

  1. В правом верхнем углу любой страницы на GitHubщелкните фото профиля.

  2. Перейдите к настройкам учетной записи.

    • Для приложения, принадлежащих личная учетная запись, щелкните Параметры.
    • Для приложения, принадлежащих организации:
      1. Щелкните Your organizations (Ваши организации).
      2. Справа от организации щелкните Параметры.
  3. На левой боковой панели щелкните Параметры разработчика.

  4. На левой боковой панели щелкните GitHub Apps.

  5. Рядом с GitHub App, которые требуется изменить, нажмите кнопку "Изменить".

  6. На боковой панели параметров GitHub Apps нажмите кнопку "Необязательные компоненты".

  7. Рядом с пунктом «Срок действия маркера "пользователь-сервер"» щелкните Согласие или Отказ. Применение этого параметра может занять несколько секунд.

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

Если вы выберете маркеры доступа пользователей, срок действия которых истекает после того, как вы уже создали маркеры доступа пользователей, срок действия ранее созданных маркеров доступа пользователей не истекает. Эти маркеры можно удалить с помощью конечной DELETE /applications/CLIENT_ID/token точки. Дополнительные сведения см. в разделе Конечные точки REST API для авторизации OAuth.

Обновление маркера доступа пользователя с помощью маркера обновления

  1. POST Выполните запрос к этому URL-адресу вместе со следующими параметрами запроса:https://github.com/login/oauth/access_token

    Параметр запросаТипОписание
    client_idstringНеобходимые. Идентификатор клиента для GitHub App. Идентификатор клиента отличается от идентификатора приложения. Идентификатор клиента можно найти на странице параметров приложения.
    client_secretstringНеобходимые. Секрет клиента для GitHub App. Вы можете создать секрет клиента на странице параметров приложения.
    grant_typestringНеобходимые. Значение должно быть "refresh_token".
    refresh_tokenstringНеобходимые. Маркер обновления, полученный при создании маркера доступа пользователя.
  2. GitHub даст ответ, содержащий следующие параметры:

    Параметр ответаТипОписание
    access_tokenstringМаркер доступа пользователя. Маркер начинается с ghu_.
    expires_inintegerКоличество секунд до истечения access_token срока действия. Если вы отключили срок действия маркеров доступа пользователей, этот параметр будет опущен. Значение всегда будет ( 28800 8 часов).
    refresh_tokenstringМаркер обновления. Если вы отключили срок действия маркеров доступа пользователей, этот параметр будет опущен. Маркер начинается с ghr_.
    refresh_token_expires_inintegerКоличество секунд до истечения refresh_token срока действия. Если вы отключили срок действия маркеров доступа пользователей, этот параметр будет опущен. Значение всегда будет ( 15897600 6 месяцев).
    scopestringОбласть маркера. Это значение всегда будет пустой строкой. В отличие от традиционного маркера OAuth, маркер доступа пользователя ограничен разрешениями, которые имеют ваше приложение и пользователь.
    token_typestringТип токена. Значение всегда будет.bearer