IT 관련/클라우드

[새싹 성동 2기] AWS IAM 기본 개념 및 보안 모범 사례

insu90 2024. 11. 3. 23:16

 

AWS IAM(Identity and Access Management)은 AWS 리소스에 대한 액세스를 제어하는 필수적인 웹 서비스입니다. IAM을 통해 사용자는 다양한 AWS 서비스와 자원에 안전하게 접근할 수 있으며, 최소 권한의 원칙을 지켜 권한을 제한할 수 있습니다. 이번 글에서는 IAM의 주요 구성 요소와 권한 제어 방법, 보안 모범 사례에 대해 알아보겠습니다.

 

1. IAM의 주요 구성 요소

  • 사용자(User): AWS 자원과 서비스를 사용하는 사람 또는 애플리케이션을 의미합니다. 각 사용자는 고유 식별자와 ARN(Amazon Resource Name)으로 구분됩니다. 예를 들어 arn:aws:iam::123456789012:user/username 형식입니다.
  • 그룹(Group): 여러 사용자에게 공통 권한을 부여할 수 있는 그룹입니다. 여러 사용자에게 일관된 권한을 손쉽게 적용하고 관리할 수 있습니다.
  • 역할(Role): 특정 상황에서 임시 자격 증명을 제공해 AWS 서비스에 접근할 수 있도록 돕습니다. 주로 애플리케이션이나 서비스가 리소스에 접근할 때 활용됩니다.
  • 정책(Policy): JSON 형식의 문서로, 권한을 정의하고 이를 사용자, 그룹, 역할에 적용하여 어떤 리소스에 어떤 작업을 할 수 있는지 관리합니다.

 

2. IAM 권한 및 정책의 종류

  • 자격 증명 기반 정책:
    • 자격 증명 기반 정책은 사용자, 그룹, 역할이 어떤 작업을 수행할 수 있는지를 제어합니다.
    • 관리형 정책: AWS가 제공하는 관리형 정책과 사용자가 직접 생성하는 고객 관리형 정책으로 나뉩니다.
      • AWS 관리형 정책: AWS에서 제공하는 표준 정책으로, 여러 엔터티에 쉽게 적용 가능.
      • 고객 관리형 정책: 사용자가 직접 관리 및 제어하는 정책으로, 더 세밀한 설정이 가능합니다.
    • 인라인 정책: 단일 사용자, 그룹 또는 역할에 직접 부여하는 정책으로, 엔터티 삭제 시 정책도 함께 삭제됩니다.
  • 리소스 기반 정책:
    • 리소스 자체에 연결하는 정책입니다. 주로 S3 버킷에서 사용되며, 특정 사용자에게 접근 권한을 부여합니다.
    • 리소스 기반 정책은 관리형으로 사용할 수 없으며 인라인 정책으로만 가능합니다.
  • 권한 경계(Permission Boundaries):
    • 자격 증명 기반 정책에 대해 부여할 수 있는 최대 권한을 제한합니다. 예를 들어, 사용자의 권한 경계가 EC2FullAccess로 설정되면, IAM 정책으로 다른 권한을 부여하더라도 EC2 외의 작업은 수행할 수 없습니다.
    • 리소스 기반 정책은 권한 경계의 영향을 받지 않습니다.

3. 보안 모범 사례

  • 루트 계정 최소화 사용: AWS 계정 생성 시 최초로 생성되는 루트 계정은 보안 상 매우 민감하므로 초기 설정 후에는 최대한 사용을 자제합니다. 일반 사용자 계정을 생성하여 필요한 서비스에만 접근하도록 설정하는 것이 좋습니다.
  • MFA(다중 인증) 활성화: 루트 계정 및 각 사용자 계정에 MFA를 적용하여 보안을 강화합니다. MFA를 통해 로그인 시 OTP를 추가로 요구하므로, 계정 보안을 한층 높일 수 있습니다.
  • 최소 권한 원칙 준수: 각 사용자는 필요한 최소한의 권한만 부여받아야 합니다. 이를 통해 실수로 인한 오남용을 방지하고 보안을 강화할 수 있습니다.
  • 정기적인 권한 점검 및 재검토: 사용자의 권한은 주기적으로 점검하여 불필요한 권한을 제거하고 최신 보안 정책을 적용하는 것이 중요합니다.

 

 

 

 

 

 

 

*생성형 AI 활용한 클라우드&보안 전문가 양성캠프 과정의 교육내용 정리 자료입니다.