Изменения в поддержке OAuth‑токенов Яндекс ID в Yandex Cloud с 1 июня

С 1 июня 2026 года мы перестанем принимать OAuth‑токены из Яндекс ID. В статье рассказываем, почему приняли это решение, какие риски связаны с OAuth‑токенами и как перейти на безопасные альтернативы для API, CLI, SDK и других инструментов.

OAuth‑токен, получаемый через Яндекс ID, — это один из способов аутентификации в API, CLI и SDK Yandex Cloud. Но использование персонального OAuth‑токена в инфраструктурных и автоматизированных сценариях несёт дополнительные риски безопасности: такой токен привязан к учётной записи пользователя, может иметь избыточные права и требует строгого контроля хранения и ротации.

По данным нашего анализа киберугроз, 55% атак на облачные и гибридные инфраструктуры в 2025 году были связаны именно с компрометацией и манипуляцией учётными записями.

Мы заботимся о безопасности ваших данных, поэтому объявляем о прекращении поддержки OAuth‑токенов из Яндекс ID для доступа к своим сервисам. Разберёмся в деталях.

Что меняется

С 1 июня 2026 года мы:

  • перестанем принимать новые OAuth‑токены, полученные через Яндекс ID;
  • продолжим поддерживать токены, выданные до 1 июня 2026 года, — они будут действовать до окончания своего срока.

Важно: изменения касаются только OAuth‑токенов, выданных для доступа к Yandex Cloud по процедуре, описанной в инструкции по получению OAuth-токена. Токены для других сервисов Яндекса, включая Яндекс 360, это не затрагивает.

Почему мы считаем OAuth‑токены менее предпочтительными

OAuth‑токен из Яндекс ID — долгоживущий ключ доступа со сроком жизни до одного года. Его особенности повышают риски безопасности:

  • Долгий срок жизни — один год. Токен не обновляется автоматически и остаётся действительным, даже если пользователь давно не заходил в систему.
  • Токен не привязан к конкретному устройству. Перехватив его, злоумышленник может действовать с любой машины и не оставаться на скомпрометированном устройстве — это существенно затрудняет его обнаружение.
  • Сложности контроля. Владельцы организаций не могут прозрачно отследить использование таких токенов с помощью Audit Trails.
  • Риск скрытого создания. При компрометации учётной записи Яндекс ID злоумышленник может незаметно создать OAuth‑токен и использовать его для закрепления в облачной инфраструктуре.

Что использовать вместо OAuth‑токенов

YC CLI

Для пользователей доступны следующие варианты:

  • аккаунт на Яндексе: yc init --username=<электронная_почта>;
  • федеративный пользователь (корпоративный IdP): yc init --federation-id=<идентификатор_федерации>;
  • локальный пользователь (пул пользователей): yc init --userpool-id=<идентификатор_пула_пользователей>.

Преимущества:

  • Нет долгоживущих секретов — в конфиге хранится только subject‑id.
  • Короткая сессия — IAM‑токен действует до 12 часов и хранится в зашифрованном виде. По истечении сессии можно обновить её вручную через браузер или в параметрах безопасности организации настроить автоматическое обновление с помощью refresh-токена. Он хранится локально в зашифрованном виде и верифицируется на стороне Yandex Cloud с помощью DPoP.

Для автоматизации рекомендуем использовать сервисный аккаунт:

  • не имеет доступа к UI;
  • права ограничены явно выданными ролями;
  • локально хранится только короткоживущий IAM‑токен — он может быть использован без необходимости создания долгоживущих ключей.

Подробнее — в документации YC CLI.

Terraform

Terraform использует провайдер Yandex Cloud, поэтому унаследует изменения YC CLI.

Packer

В Packer для аутентификации рекомендуем использовать сервисный аккаунт и его IAM‑токен вместо OAuth‑токена.

SDK

В YC SDK аутентификация с помощью OAuth‑токена помечена устаревшей во всех поддерживаемых языках (Go, Java, C#, Python®, Node.js®).

Рекомендуемый способ: аутентификация с помощью сервисного аккаунта и его IAM‑токена.

API

Выбор способа аутентификации зависит от актора и типа сервиса:

  • Для пользователей: IAM‑токен через YC CLI; для S3‑совместимых сервисов — эфемерный ключ.
  • Для автоматизации: IAM‑токен через сервис метаданных (на виртуальных машинах и в serverless), через WLIF (в Yandex Managed Service for Kubernetes® и вне Yandex Cloud) или через YC CLI (локально); для S3‑совместимых сервисов — эфемерный или статический ключ.

Подробнее о том, как получить IAM-токен для сервисного аккаунта, — в документации.

Заключение

Переход с OAuth‑токенов на более безопасные методы аутентификации — важный шаг для повышения защиты нашей инфраструктуры. Подготовьтесь к изменениям заранее: изучите документацию, протестируйте новые способы аутентификации и обновите скрипты автоматизации.

Если у вас остались вопросы, обратитесь к вашему аккаунт-менеджеру или в службу технической поддержки.

Изменения в поддержке OAuth‑токенов Яндекс ID в Yandex Cloud с 1 июня
Войдите, чтобы сохранить пост