서비스 간 안전한 내부 통신 구성
Vercel의 Service Bindings는 멀티 서비스 배포에서 서비스 간 안전한 내부 통신을 자동화한다. 한 서비스가 다른 서비스에 바인딩을 선언하면 Vercel이 환경 변수 주입, 내부 라우팅, TLS 암호화를 투명하게 처리해 공개 인터넷을 거치지 않고 HTTPS 통신이 가능하다.
Vercel Marketplace에 Amazon Aurora PostgreSQL, Aurora DSQL, DynamoDB가 추가됐다. IAM 기반 인증으로 정적 패스워드 없이 연결하는 패턴이 핵심이다 — AWS RDS Signer가 OIDC 자격증명으로 동적 토큰을 발급해 Vercel Function에서 직접 사용한다.
Vercel과 AWS 연동의 핵심은 IAM 기반 동적 인증이다. 정적 패스워드 대신 OIDC 자격증명으로 임시 토큰을 발급받아 DB에 연결한다. `lib/postgres.ts` 구현 패턴:
```typescript import { Pool } from 'pg'; import { awsCredentialsProvider } from '@vercel/functions/oidc'; import { RdsSigner } from '@aws-sdk/rds-signer';
const signer = new RdsSigner({ credentials: awsCredentialsProvider({ roleArn: process.env.AWS_ROLE_ARN }), hostname: process.env.RDS_HOSTNAME, port: 5432, username: process.env.RDS_USERNAME, region: process.env.AWS_REGION, });
const pool = new Pool({ host: process.env.RDS_HOSTNAME, user: process.env.RDS_USERNAME, password: async () => await signer.getAuthToken(), // 동적 토큰 ssl: true, }); ```
`getAuthToken()`은 매 연결 시마다 단기 인증 토큰을 생성한다. 정적 패스워드를 저장하지 않으므로 자격증명 유출 위험이 낮다. Vercel Functions의 OIDC 자격증명이 AWS IAM 역할 위임(AssumeRoleWithWebIdentity)에 사용된다.
신규 AWS 고객은 크레딧 100달러를 받을 수 있다.
Vercel의 Service Bindings는 멀티 서비스 배포에서 서비스 간 안전한 내부 통신을 자동화한다. 한 서비스가 다른 서비스에 바인딩을 선언하면 Vercel이 환경 변수 주입, 내부 라우팅, TLS 암호화를 투명하게 처리해 공개 인터넷을 거치지 않고 HTTPS 통신이 가능하다.
Vercel CLI v54.17.2부터 vercel deploy --dry 명령으로 실제 파일 업로드 없이 배포 구성을 미리 검사할 수 있다. 프레임워크 감지 결과, 포함/제외 파일 목록, 디렉터리 크기 분포, 콘텐츠 해시까지 사전에 확인하고 나서 배포를 결정할 수 있어 의도치 않은 배포 실패를 예방한다.
Vercel이 프론트엔드와 백엔드를 단일 프로젝트에서 통합 배포할 수 있는 Vercel Services를 출시했다. vercel.json 하나로 Next.js 프론트엔드와 FastAPI 백엔드를 선언하고, 내부 서비스 간 통신은 공개 인터넷을 경유하지 않는 private binding으로 처리한다.