[AWS] AWS Secrets Manager를 이용하여 ECS Container에 안전하게 환경 변수 주입하기

꼬마요리사레미·2024년 4월 6일

AWS

목록 보기
6/10

✨ Secrets Manager를 이용하여 작업 정의 시 환경 변수 설정

  • ECS Task Definition 설정을 하다보면 환경 변수를 추가하는 항목이 보이는데, 키에 대한 값을 바로 입력하지 않고 AWS Secrets Manager를 사용하여 환경변수를 안전하게 관리하고자 한다.

  • AWS Secrets Manager에서 새 보안 암호 저장 버튼을 클릭하여 위와 같이 보안 암호를 생성해준다.
  • 이후 생성된 보안 암호 이름을 클릭하면 보안 암호 세부 정보 목록에서 보안 암호 ARN 값을 확인할 수 있을 것이다. 이를 복사해준다.

  • 다시 ECS 작업 정의하는 곳으로 돌아와서 환경 변수 값에 복사한 보안 암호 ARN 값을 붙여준다.
  • 하지만 현재 태스크 실행 IAM 역할에 AWS Secrets Manager의 보안 암호에 액세스할 수 있는 권한이 존재하지 않기 때문에 추가해주는 작업이 필요하다.

  • IAM에서 ecsTaskExecutionRole 역할에 대한 권한 정책 - 권한 추가 - 인라인 정책 추가 버튼을 차례대로 클릭해준다.

  • Secrets Manager에 관련된 작업 정책을 설정한다. 모든 Secrets Manager 작업에 대한 액세스가 가능하도록 설정하고, 모든 리소스에 대해 허용하도록 설정한다.
  • 이렇게 인라인 정책 생성을 마쳤으면 위와 같이 ecsTaskExecutionRole에 내가 생성한 Secrets Manager에 대한 정책이 잘 적용된 것을 확인할 수 있다.

  • 태스크 실행 IAM 역할에 ecsTaskExecutionRole을 설정해주면 작업 실행 중 Secrets Manager의 보안 암호에 접근하여 환경 변수 값을 가져오는 데에 성공할 수 있다.

0개의 댓글