DEVOPS/CLOUD

[AWS] IAM이란?

연듀 2022. 10. 27. 14:59

 

AWS Identity and Access Management(IAM)

 

  • AWS 전체의 권한 통제 시스템
  • IAM을 사용하여 AWS 리소스에 대한 액세스 관리
    • 리소스는 사용자가 작업을 수행할 수 있는 AWS 계정의 엔티티
  • 세분화된 액세스 권한 정의
    • 리소스에 액세스할 수 있는 사용자
    • 액세스할 수 있는 리소스와 사용자가 리소스에 수행할 수 있는 작업
    • 리소스에 액세스 하는 방법

 

구성 요소

  • IAM 사용자 : AWS 계정으로 인증할 수 있는 사람 또는 애플리케이션
  • IAM 그룹 : 동일한 권한 부여를 허락받은 IAM 사용자의 모음IAM 정책을 그룹에 연결하여 권한 부여
  • 기본 그룹은 없음
  • 한 사용자가 여러 그룹에 속할 수 있음
  • IAM 정책 : 권한(액세스할 수 있는 리소스와 각 리소스에 대한 액세스 수준)을 정의하는 문서
    • 자격 증명 기반 정책
      • 정책을 모든 IAM 엔터티에 연결(IAM 사용자, IAM 그룹, IAM 역할)
      • 엔터티가 수행할 수 있는/없는 작업을 지정
      • 단일 정책을 여러 엔터티에 연결 가능
      • 단일 엔터티에 여러 정책을 연결 가능
    • 리소스 기반 정책
      • 리소스에 정책을 연결해 리소스에 액세스할 수 있는 사용자와 해당 사용자가 수행할 수 있는 작업 지정
      • 일부 AWS 서비스에서만 지원됨
  • 2가지 유형의 정책 - 자격 증명 기반/리소스 기반
  • IAM 역할 : AWS 서비스 요청을 위한 권한 세트를 부여하는 유용한 메커니즘
    • 권한을 부여하는 IAM 정책을 정의하고 그 정책을 역할에 연결한후 인스턴스나 엔터티가 역할을 수임

 

 

IAM 유저의 종류

 

  • root user
    • 모든 리소스에 대한 전체 액세스 권한
    • 필요한 경우를 제외하고 루트 사용자를 사용하지 않음
  • IAM user
    • 세분화된 권한
    • 애플리케이션에 대한 안전한 액세스
    • 다른 AWS 서비스와 통합