jsonscraper

GitHub CLI добавила истекающие OAuth-токены: как включить и проверить интеграции

С 21 октября GitHub CLI поддерживает истекающие учётные данные с автоматическим обновлением. Разбираем включение и места, где сохранённый токен может сломать автоматизацию.

Редакционная политика Сообщить об ошибке

Токен, однажды скопированный в переменную или скрипт, может перестать работать после истечения срока действия. 21 октября 2026 года GitHub объявила о публичном превью истекающих OAuth-учётных данных с автоматическим обновлением в GitHub CLI. Режим подключается по желанию и рассчитан на рабочие процессы, где авторизацией управляет сама CLI.

Article: GitHub CLI добавила истекающие OAuth-токены: как включить и проверить интеграции
Summary: В публичном превью GitHub CLI можно запросить истекающие OAuth-учётные данные с автоматическим обновлением. Для Git по HTTPS настройте CLI как credential helper; отдельно проверьте скрипты и приложения, которые хранят токен.
Image role: cover — the central idea
Section: 
Visual subject: Editorial technology photograph of a terminal displaying GitHub CLI authentication commands beside a physical sec
© jsonscraper · AI-generated illustration

Как включить обновляемые учётные данные

Нужна GitHub CLI версии 2.103.0 или новее. Для отдельного входа добавьте флаг --expiring:

gh auth login --expiring

Чтобы включать запрос обновляемых учётных данных при последующих входах, выполните:

gh config set expiring_credentials enabled

CLI хранит истекающий access token вместе с rotating refresh token и обновляет учётные данные, когда они нужны. Состояние авторизации и срок действия текущего токена показывает команда gh auth status. Флаг запрашивает обновляемые учётные данные; их выдача зависит от возможностей хоста и конфигурации OAuth-приложения. Если сервер их не поддерживает, CLI использует обычный токен без срока действия.

Настройте Git как потребителя учётных данных

Для репозиториев с HTTPS настройте GitHub CLI как Git credential helper:

gh auth setup-git

Тогда Git запрашивает учётные данные у gh, который может обновить их перед использованием. GitHub рекомендует Git версии 2.46 или новее: она позволяет CLI пометить истекающие учётные данные, чтобы Git не кэшировал их после окончания срока действия. С более старой версией GitHub CLI работает, но один раз предлагает обновиться.

После настройки проверьте обычную операцию Git по HTTPS, например чтение состояния удалённого репозитория. Убедитесь, что Git получает учётные данные через helper: это проверяет весь путь авторизации, а не только вход в CLI.

Проверьте скрипты и внешние приложения

Уязвимое место — скрипт или расширение, которое однажды запускает gh auth token, сохраняет строку и повторно использует её позднее: такой access token может истечь. Если внешнему процессу нужен токен, запрашивайте его свежим при каждом запуске через gh auth token. Сам потребитель должен уметь использовать актуальное значение и учитывать истечение токена.

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

Где доступна функция

GitHub объявила поддержку на github.com и ghe.com. GitHub Enterprise Server выдаёт такие учётные данные начиная с версии 3.23; на более ранних версиях запрос обновляемых данных переключается на обычный токен без срока действия. Режим пока включается добровольно; GitHub планирует со временем сделать его стандартным для новых входов.

Практический порядок: обновить GitHub CLI, включить запрос обновляемых учётных данных, настроить Git через gh auth setup-git и проверить внешние процессы на сохранение токена. Это помогает выявить несовместимые сценарии до переключения.

Подробности GitHub опубликовала в анонсе о превью и в документации команды gh auth login.

Персоны

Для этой статьи персоны пока не указаны.

Читайте дальшеGitHub вывела управление моделями Copilot в REST API — в день вывода шести моделей
Читать следующую статью

Превратите прочитанное в рабочую интеграцию

Изучайте API социальных данных jsonscraper, тестируйте запросы и создавайте новые процессы.

Смотреть API