Serverless Framework 함수의 고객 관리 KMS 키 미지정

별도 키 관리가 필요하면 함수 환경 변수에 고객 관리 KMS 키를 지정하세요.

설명

Lambda 환경 변수는 기본적으로 저장 중 암호화됩니다. Serverless Framework에서 kmsKeyArn을 지정하면 기본 키 대신 고객 관리 KMS 키를 사용할 수 있습니다. 키 미지정이 곧 평문 저장을 뜻하지는 않습니다.

잠재적 영향

조직이 키 정책이나 수명 주기를 직접 관리해야 하는 경우 해당 요구사항을 충족하지 못할 수 있습니다.

해결 방법

고객 관리 키가 필요하면 provider.kmsKeyArn 또는 함수의 kmsKeyArn에 키 ARN을 지정하고 권한을 확인하세요. 함수별 재정의도 점검하고 실제 비밀값은 Secrets Manager 등으로 관리하세요.

예시

예시는 공급자 수준과 hello 함수에 같은 키를 지정합니다. 함수에 같은 값을 반복할 필요는 없으며, 키 ARN은 실제 값으로 바꾸세요. KMS 설정은 소스 파일의 환경 변수 값을 암호화하지 않습니다.

변경 전

yaml
provider:
  name: aws
  environment:
    TABLE_NAME: tableName1

functions:
  hello:
    handler: handler.hello
    environment:
      TABLE_NAME: tableName2

변경 후

yaml
provider:
  name: aws
  kmsKeyArn: arn:aws:kms:us-east-1:111122223333:key/12345678-1234-1234-1234-123456789012
  environment:
    TABLE_NAME: tableName1

functions:
  hello:
    handler: handler.hello
    kmsKeyArn: arn:aws:kms:us-east-1:111122223333:key/12345678-1234-1234-1234-123456789012
    environment:
      TABLE_NAME: tableName2

참조