환경 변수에 시크릿 전달

환경 변수에 시크릿 전달 (SSM 파라미터 스토어)

AWS Systems Manager Parameter Store(SSM 파라미터 스토어)에 저장된 비밀 값을 Amazon ECS 컨테이너의 환경 변수로 전달할 수 있어요. 민감한 데이터를 하드코딩하지 않고 안전하게 주입할 수 있어요.

출처: 문서

본문

Amazon ECS에서 컨테이너의 환경 변수에 시크릿을 전달하려면 AWS Systems Manager Parameter Store를 사용할 수 있어요.

SSM 파라미터 스토어의 비밀 값을 환경 변수로 전달하려면:

  1. SSM 파라미터 스토어에 시크릿을 저장해요(예: 문자열 파라미터 또는 보안 문자열 SecureString).
  2. 태스크 정의의 컨테이너 정의에서 secrets를 사용해 환경 변수에 SSM 파라미터를 매핑해요.
  3. 태스크 실행 역할(task execution role)에 ssm:GetParameters 권한을 부여해요.

태스크 정의에서 secrets를 사용한 예시는 다음과 같아요:

{
  "secrets": [
    {
      "name": "DATABASE_PASSWORD",
      "valueFrom": "arn:aws:ssm:us-east-1:123456789012:parameter/MySecureString"
    }
  ]
}

valueFrom에는 SSM 파라미터의 ARN 또는 이름을 지정하며, ssm:GetParameters 권한이 필요해요. 이를 통해 민감한 데이터를 컨테이너 이미지나 태스크 정의에 평문으로 넣지 않고 안전하게 환경 변수로 전달할 수 있어요.

더 알아보기 (Learn more)