피드로 돌아가기
Ditch Static IAM Keys: Run Terraform with AWS SSO
Dev.toDev.to
DevOps

정적 IAM 키 제거, AWS SSO와 OIDC로 구현한 제로 트러스트 인프라

Ditch Static IAM Keys: Run Terraform with AWS SSO

khimananda Oli2026년 4월 9일8intermediate

Context

공유 IAM 사용자 기반의 정적 Access Key 사용 구조. CloudTrail 내 개별 작업자 식별 불가 및 키 유출 위험 상존. MFA 적용 불가 및 수동 키 로테이션으로 인한 운영 공수 과다.

Technical Solution

  • AWS IAM Identity Center 도입을 통한 엔지니어별 개별 SSO 인증 체계 구축
  • GitHub Actions와 AWS STS 간 OIDC Federation 연동으로 CI/CD 파이프라인 내 정적 자격 증명 제거
  • Terraform Provider 내 assume_role 블록을 삭제하고 환경 변수 기반의 인증 방식으로 전환
  • S3 Backend 설정에 shared-account 프로필을 명시하여 크로스 계정 상태 파일 및 DynamoDB 락 테이블 접근 권한 분리
  • S3 기반 모듈 저장소의 인증 문제를 해결하기 위해 GitHub 레포지토리 기반 모듈 참조 방식으로 변경
  • OIDC 토큰 요청을 위해 GitHub Actions 워크플로우 내 id-token: write 권한 부여

Key Takeaway

인프라 권한 관리를 정적 키에서 단기 세션 기반의 신원 인증 체계로 전환하여 보안 사고 가능성을 원천 차단하고 감사 추적성을 확보하는 설계 원칙.


멀티 계정 Terraform 환경에서 S3 Backend 사용 시, 상태 저장 계정과 타겟 계정이 다르면 Backend 설정에 별도 profile을 지정할 것

원문 읽기