본문 바로가기

프로그래밍/⚙️DevOps

AWS) AWS IAM 개요

 

 

 

AWS IAM (Identity & Access Management)

AWS IAM은 “누가(Who) 어떤 AWS 리소스에(What) 어떤 조건에서(How) 접근할 수 있는가” 를 정의하는
AWS 보안의 가장 기본이자 핵심 서비스다.


📑 목차

  1. AWS IAM 개요
  2. IAM이 해결하는 핵심 질문
  3. IAM 기본 구성 요소
    • IAM User
    • IAM Group
    • IAM Role
    • IAM Policy
  4. IAM 주요 사용 사례 (Use Cases)
    • MFA 적용
    • 사내 디렉터리 연동 (Federation)
    • 세분화된 접근 제어
    • 접근 분석 및 검증
  5. IAM 설계 시 핵심 원칙
  6. 정리 및 한 줄 요약

1. AWS IAM 개요

AWS Identity & Access Management(IAM)
AWS 계정 및 리소스에 대한 인증(Authentication)
권한 부여(Authorization) 를 담당하는 서비스다.

IAM의 특징

  • AWS 계정에 기본 포함
  • 추가 비용 없음 (₩0)
  • 모든 AWS 서비스 접근의 관문
  • API, 콘솔, CLI 접근 모두 통제 가능

➡️ IAM 없이 AWS 보안은 시작조차 할 수 없다


2. IAM이 해결하는 핵심 질문

IAM은 아래 질문에 답하기 위해 존재한다.

  • 누가 인증되었는가? (Who is authenticated?)
  • 무엇에 접근하려 하는가? (Which resource?)
  • 어떤 작업을 허용할 것인가? (Allow / Deny)
  • 어떤 조건에서 허용할 것인가? (Time, IP, MFA 등)

이 모든 판단은 IAM Policy 를 기준으로 이루어진다.


3. IAM 기본 구성 요소

3.1 IAM User

  • 실제 사람 또는 애플리케이션 단위
  • 고유한 자격 증명 보유
    • 콘솔 비밀번호
    • Access Key / Secret Key

📌 실무에서는 사람에게 직접 권한 부여를 최소화하는 게 원칙


3.2 IAM Group

  • 여러 IAM User를 묶는 단위
  • 권한은 그룹에 부여
  • 사용자는 그룹의 권한을 상속

📌 권한 관리는 무조건 그룹 단위로


3.3 IAM Role

  • 임시 자격 증명(Temporary Credentials) 제공
  • 사용자나 서비스가 “역할을 맡는” 개념
  • 기본적으로 권한 없음

주요 사용 사례

  • EC2 → S3 접근
  • Lambda → DynamoDB 접근
  • Cross-account 접근

📌 서비스 간 접근은 User ❌ / Role ⭕


3.4 IAM Policy

  • JSON 기반 권한 문서
  • Allow / Deny 명시
  • 기본 원칙: 명시적 허용만 가능

구성 요소

  • Effect (Allow / Deny)
  • Action
  • Resource
  • Condition (선택)

📌 Deny는 항상 Allow보다 우선


4. IAM 주요 사용 사례 (Use Cases)

4.1 관리자 및 중요 계정에 MFA 적용

고권한 사용자(Root, Admin)는 반드시 MFA(Multi-Factor Authentication) 적용

인증 흐름

  1. Username + Password
  2. MFA 코드 (하드웨어 토큰 / 모바일 앱)
  3. 접근 허용

➡️ 계정 탈취 리스크 대폭 감소


4.2 사내 디렉터리와 연동 (Identity Federation)

IAM은 기업의 기존 인증 시스템과 연동 가능

대표 예시

  • Microsoft Active Directory
  • SAML 2.0 기반 연동

효과

  • 사내 계정으로 AWS 로그인
  • 별도 IAM User 관리 불필요
  • 중앙 인증 체계 유지

➡️ 엔터프라이즈 환경 필수 구조


4.3 세분화된 접근 제어 (Fine-grained Access Control)

IAM Policy는 조건 기반 접근 제어가 가능하다.

조건 예시

  • 특정 시간대만 접근 허용
  • 특정 IP 대역만 허용
  • SSL 사용 시에만 접근 허용
  • MFA 인증된 경우만 허용

➡️ “누가 언제 어디서 어떻게”까지 통제 가능


4.4 접근 분석 및 검증 (Analyze Access)

보안팀·관리자는 IAM 정책을 분석해
의도된 접근인지 / 과도한 권한인지를 검증한다.

검증 포인트

  • 퍼블릭 접근 여부
  • 계정 간(Cross-account) 접근
  • 실제 사용 중인 서비스만 허용되어 있는지

➡️ 최소 권한(Least Privilege) 유지 핵심 단계


5. IAM 설계 시 핵심 원칙

✅ 반드시 지켜야 할 원칙

  1. Root 계정은 사용하지 않는다
  2. 모든 사용자에 MFA 적용
  3. 권한은 그룹 또는 역할로 관리
  4. 서비스 간 접근은 Role 사용
  5. 최소 권한 원칙 적용
  6. Access Key는 주기적으로 교체

6. 정리 및 한 줄 요약

  • IAM은 AWS 보안의 시작점
  • 인증(Authentication) + 권한(Authorization) 모두 담당
  • User / Group / Role / Policy 구조 이해 필수
  • MFA, Federation, 조건부 접근 제어가 핵심 활용 포인트
  • “IAM을 잘 설계하면 보안 사고의 80%는 예방 가능”

 

 

 

 

 

 

 

'프로그래밍 > ⚙️DevOps' 카테고리의 다른 글

AWS) IAM - Access Analysis  (0) 2026.01.24
AWS) Security and Compliance Overview  (1) 2026.01.24
AWS) Amazon Elastic File System(EFS)  (1) 2026.01.19
AWS) AWS Cloud Adoption Framework (CAF)  (0) 2026.01.19
AWS) DynamoDB Query  (0) 2026.01.19