[AWS] IAM

gyeol·2025년 10월 4일

AWS

목록 보기
11/20
post-thumbnail

1. IAM이란?

AWS에서 누가, 무엇을 할 수 있는지를 정해주는 보안 관리자라고 생각하면 된다.
예를 들어, 집의 문에 “누구는 현관까지만, 누구는 방까지 들어올 수 있음” 이런 식으로 권한을 정하는 역할이다.


2. 핵심 구성 요소

  • 사용자(User) → AWS에 로그인해서 직접 쓰는 사람(계정).
  • 그룹(Group) → 비슷한 역할을 하는 사용자들을 묶어 한 번에 권한을 주는 것. (예: 개발자 그룹, 운영자 그룹)
  • 역할(Role) → 사람이 아닌 AWS 서비스(예: EC2, Lambda)가 대신 AWS 자원에 접근할 수 있도록 주는 “임시 권한 배지”.
  • 정책(Policy) → “이 리소스에서 이 행동을 허락한다/거부한다”라고 적어둔 규칙 문서(JSON).

3. 보안 모범 사례

  • 루트 계정은 거의 쓰지 말기 → 처음 계정 만들 때 생기는 슈퍼 계정인데, 결제 관리 같은 꼭 필요한 일에만 사용.
  • MFA(2단계 인증) 꼭 켜기 → 비밀번호 외에 OTP 같은 추가 인증을 넣어 보안 강화.
  • 최소 권한만 주기 → “모든 권한”을 주지 말고 필요한 것만 허락하기.
  • 권한 점검하기 → IAM Access Analyzer 같은 도구로 권한이 과도하지 않은지 확인.

4. IAM 정책과 권한 관리

  • IAM은 기본적으로 모든 요청을 거부.
  • 정책에 허용(Allow)이 있으면 접근 가능.
  • 하지만 거부(Deny)가 명시돼 있으면 무조건 막힘.
  • 예: S3 전체 권한(s3:*) 대신, 정말 필요한 삭제 권한(s3:DeleteObject)만 주는 게 좋다.

5. IAM 활용 시나리오

(1) 계정 간 접근

  • 내 AWS 계정에서 다른 AWS 계정 리소스도 써야 할 때, 역할(Role)을 통해 안전하게 접근 권한을 위임한다.
  • 예: 개발 계정 → 운영 계정으로 코드 배포.

(2) 온프레미스(내 서버)와 연동

  • IAM Roles Anywhere → 회사 서버나 로컬 서버에서도 AWS 리소스를 임시 권한으로 안전하게 접근.
  • Permission Set (IAM Identity Center) → 일종의 권한 세트(템플릿). 사용자를 일일이 설정할 필요 없이 미리 만들어둔 권한을 적용.
  • 기존 LDAP/IdP 연동 → 회사에서 쓰던 로그인 시스템(Okta, AD FS 등)과 AWS를 연결해서 한 번 로그인으로 같이 쓰기(SSO).

(3) Active Directory(AD) 통합

  • AD Connector: AWS가 회사 AD에 프록시처럼 접근 → 사용자 인증 연동.
  • AWS Managed Microsoft AD + Forest Trust: AWS에서 관리형 AD 운영 + 회사 AD와 서로 신뢰 관계 맺기.
  • SAML Federation: AD FS 같은 시스템을 써서 브라우저 로그인으로 AWS 접근.
profile
공부 기록 공간 '◡'

0개의 댓글