Vercel добавил кастомные аудитории для OIDC-токенов: что изменилось
Vercel объявил о поддержке кастомных аудиторий для OIDC-токенов. Это нововведение позволяет разработчикам запрашивать токены с определённым значением audience, что повышает безопасность аутентификации между сервисами и сторонними провайдерами. Ранее все OIDC-токены Vercel имели фиксированную аудитор

Vercel объявил о поддержке кастомных аудиторий для OIDC-токенов. Это нововведение позволяет разработчикам запрашивать токены с определённым значением audience, что повышает безопасность аутентификации между сервисами и сторонними провайдерами. Ранее все OIDC-токены Vercel имели фиксированную аудиторию, что ограничивало гибкость и создавало риски при компрометации одного из провайдеров. Теперь каждый провайдер может получить уникальный токен, который нельзя использовать против других сервисов.
Как это работает
Когда развёртывание Vercel запускается, оно получает OIDC-токен, подписанный Vercel. Новый сервис обмена принимает этот токен и возвращает новый, подписанный тем же ключом, но с обновлённым значением audience, соответствующим целевому сервису. Обменянный токен сохраняет все исходные claims, включая project, environment, owner и expiration. При этом issuer (iss) устанавливается на https://oidc.vercel.com/{owner}, а actor (act) claim включает исходную аудиторию и время выпуска для аудита. Audience (aud) обновляется до запрошенного значения, а issued-at (iat) — до текущего времени. Опционально можно передать JWT ID (jti) для уникальной идентификации токена, что полезно для аудита и трассировки.
Почему это важно для безопасности?
Использование уникальной аудитории для каждого провайдера является лучшей практикой безопасности. Если провайдер будет скомпрометирован, злоумышленник не сможет воспроизвести токен против другого провайдера из-за несовпадения claim aud. Раньше разработчикам приходилось создавать дополнительную инфраструктуру для управления аудиториями, теперь Vercel упрощает этот процесс. Это особенно актуально для команд, работающих с несколькими облачными провайдерами, где каждый сервис требует свой токен.
Кого затронет нововведение?
Изменение в первую очередь касается разработчиков, использующих Vercel для развёртывания и нуждающихся в безопасной аутентификации между сервисами. Например, при интеграции с AWS, Google Cloud или Azure можно настроить отдельные токены для каждого провайдера, не опасаясь, что утечка одного токена скомпрометирует другие сервисы. Также это упрощает работу с CI/CD-пайплайнами, где требуется временный доступ к ресурсам.
Какие ограничения пока неизвестны?
На данный момент нет информации о поддержке кастомных аудиторий в бесплатных тарифах Vercel. Также не объявлены ограничения по количеству обменов токенов или возможные задержки при генерации. Разработчикам стоит следить за обновлениями документации, чтобы узнать о возможных лимитах. В целом, нововведение делает Vercel более привлекательным для enterprise-проектов, где безопасность и гибкость аутентификации критичны.
Как начать использовать кастомные аудитории?
Для использования новой функции необходимо обновить конфигурацию развёртывания. В документации Vercel приведены примеры настройки OIDC-токенов с указанием целевой аудитории. Процесс включает создание запроса на обмен токена с указанием aud и опционально jti. После обмена полученный токен можно использовать для аутентификации в стороннем сервисе. Vercel рекомендует всегда указывать jti для возможности отслеживания использования токенов.
Что изменится для существующих проектов?
Существующие проекты продолжат работать без изменений, так как по умолчанию используется фиксированная аудитория. Однако для новых интеграций рекомендуется сразу настраивать кастомные аудитории. Это позволит избежать будущих проблем с безопасностью и упростит масштабирование. Разработчикам, которые уже используют OIDC-токены, стоит пересмотреть конфигурацию и добавить уникальные аудитории для каждого провайдера.
Заключение
Поддержка кастомных аудиторий для OIDC-токенов — важный шаг Vercel в повышении безопасности и гибкости платформы. Нововведение позволяет разработчикам следовать лучшим практикам без дополнительных затрат на инфраструктуру. Ожидается, что функция будет востребована в крупных проектах, где требуется строгий контроль доступа. Следите за обновлениями, чтобы узнать о возможных ограничениях и новых возможностях.