Vercel KMS: JWT из Functions без приватных ключей в коде

Подписать JWT прямо из Vercel Function, не кладя приватный ключ в репозиторий или переменные окружения, теперь можно через KMS: функция входит по OIDC-токену проекта, Vercel держит асимметричный ключ в управляемом хранилище, а снаружи для проверки хватает публичной части.
Эмитентов и ключи под RSA, ECDSA и EdDSA создают и ротируют из CLI и дашборда. Пакет @vercel/kms выпускает токены с кастомными claims и настраиваемым TTL или подписывает сырые байты. Право подписи выдают по окружению — production, preview, development и кастомные environments.
Гранты и проверка с любой стороны
- на каждый grant можно ограничить claims и валидировать их через JSON Schema;
- метаданные эмитента — в OIDC Discovery по адресу
https://kms.vercel.com/<issuerId>/.well-known/openid-configuration; - публичные ключи — в JWKS на
https://kms.vercel.com/<issuerId>/jwks.json, подойдёт любая стандартная OIDC- или JOSE-библиотека без Vercel-специфичного кода.
Отдельный issuer на проект и окружение держит аудитории раздельными: доступ к подписи ограничен одним деплоем, ротация и отзыв ключей не затрагивают соседние среды.
Источник: Sign JWTs from your Functions without managing private keys.