함수에서 JWT 서명하는 관리형 키 지원
Vercel Functions에서 관리형 비대칭 키로 JWT와 임의 메시지를 서명할 수 있게 되었습니다.
교안에 영향
이전의 'private key를 직접 관리해야 한다'는 안내는 더 이상 맞지 않습니다.
요약
- Vercel KMS로 Vercel Functions에서 관리형 비대칭 서명 키를 사용해 JWT와 임의 메시지를 서명할 수 있습니다. - private key는 코드나 환경 변수에 두지 않고 Vercel의 키 관리 서비스에 보관합니다. - CLI와 dashboard에서 issuer와 signing key를 만들고 회전할 수 있습니다. - @vercel/kms 패키지로 커스텀 claims, TTL 설정, 원시 바이트 서명, 환경별 권한 부여, JSON Schema 검증과 OIDC/JOSE 기반 검증을 지원합니다.
바뀐 것
새 기능
- Vercel KMS로 Vercel Functions에서 관리형 비대칭 서명 키를 사용해 JWT와 임의 메시지를 서명할 수 있게 했습니다.
- CLI와 dashboard에서 issuer와 signing key를 만들고 회전할 수 있습니다.
- @vercel/kms 패키지로 커스텀 claims와 configurable TTL을 가진 JWT 서명과 raw bytes 서명을 지원합니다.
- production, preview, development, custom environments별로 프로젝트 서명 권한을 부여할 수 있습니다.
- grant별로 프로젝트가 요청할 수 있는 claims를 제한하고 JSON Schema로 token claims를 검증할 수 있습니다.
- 각 issuer가 OpenID Connect Discovery 문서와 JWK set을 공개해 표준 OIDC 또는 JOSE 라이브러리로 토큰을 검증할 수 있습니다.
기타
- 보안 모범 사례로 프로젝트와 환경마다 별도 issuer를 만들고 키를 분리해 관리하도록 안내합니다.