목록 보기
EKS에서 쿠버네티스 포드의 IAM 권한 제어하기: Pod Identity Webhook
데브옵스

EKS에서 쿠버네티스 포드의 IAM 권한 제어하기: Pod Identity Webhook

데브시스터즈
데브시스터즈
2020년 6월 2일

두줄요약

EKS Pod Identity Webhook으로 서비스 어카운트별 IAM 역할을 분리하는 방식을 설명했습니다. OIDC 토큰과 AssumeRoleWithWebIdentity 기반의 권한 검증 흐름을 다뤘습니다.

문제 상황

  • 워커 노드 IAM 역할을 여러 포드가 공유하는 과도한 권한 집중
  • 포드별 최소 권한 분리를 위한 별도 IAM 역할 필요

구조와 흐름

  • Pod Identity Webhook의 mutating webhook 기반 환경 변수와 projected 서비스 어카운트 토큰 주입
  • AWS SDK의 AssumeRoleWithWebIdentity 호출과 EKS OpenID Connect Provider 기반 토큰 검증
  • IAM Trust Relationship의 서비스 어카운트·네임스페이스 조건 기반 Assume Role 제한

선택 이유

  • iptables 트래픽 가로채기와 애드온의 Assume Role 대행이 필요한 kube2iam·kiam 대비 EKS 내장 기능 활용
  • kiam의 서버·에이전트 TLS 인증서 및 노드 배치 관리, kube2iam의 전체 워커 노드 Assume Role 권한 부담 완화

주의할 점

  • Pod Identity Webhook 이미지 직접 빌드·배포와 인증서 서명 요청 승인 필요 가능성
  • Web Identity 토큰을 지원하는 AWS SDK 버전 필요
  • OIDC Provider 등록 시 thumbprint 설정과 IAM Trust Relationship의 세밀한 조건 구성 필요

다음 읽기

#EKS 주제를 다룬 다른 회사 글

EKS 1.32 업데이트 그리고 새로운 업데이트 방식

EKS 1.32 업데이트를 위해 기존 방식들의 한계를 비교하고 Blue-Green Multi Target 전환 방식을 검토했습니다. DNS 캐시 영향 없이 트래픽을 넘기고 빠른 롤백도 가능한 구성을 검증했습니다.

비브로스
비브로스
데브옵스

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...