메뉴 닫기

[AWS] IAM ID 및 액세스 관리

AWS IAM

Identity and Access Management(IAM) 이란?

AWS 서비스에 대한 액세스를 안전하게 제어할 수 있는 서비스 IAM을 사용하여 인증 및 권한부여 된 대상이 리소스를 사용하도록 제어한다.
인증, 인가된 사용자들이 리소스에 접근할 수 있도록 제어하기 위해 IAM을 사용한다.

You use IAM to control who is authenticated (signed in) and authorized (has permissions) to use resources.


IAM에 액세스 하는 방법

  1. AWS Management Console(웹 콘솔)
  2. AWS CLI
    1. AWS CLI COMM_IAM
  3. AWS SDKs API
    1. 프로그램화된 API콜을 위해서는 SDK를 사용을 권장한다. Ex) Python-Boto3

IAM 사용자(IAM User)

IAM 사용자란 AWS 계정 내 생성된 하위 계정을 의미한다.

IAM 사용자에 권한 할당 방법

  • 그룹에 사용자를 추가해서 권한 부여 ( 사용자를 그룹별로 관리하고 그룹에 정책을 연결 )
  • 기존 사용자에게서 권한을 복사
  • 기존 정책에 직접 연결

IAM 권한 할당

권한 부여 주체

  • IAM 사용자(User)
  • IAM 그룹(Group)
  • IAM 역할(Role)

ROLE?

역할을 사용하면 제한된 시간 동안 사용자에게 리소스에 대한 액세스 권한을 부여할 수 있다.

정책(Policy)이란?

  • 권한을 설명하는 JSON 문서
  • 사용자, 그룹 또는 역할에 할당

자격증명 기반 정책(AWS 관리형 정책, 고객 관리형 정책, 인라인 정책)

AWS 관리형 정책 : AWS 에서 생성하고 관리하는 관리형 정책 고객 관리형 정책 : 사용자가 계정에서 생성, 관리하는 관리형 정책

관리형 정책 : 자격 증명이 수행할 수 있는 작업, 대상 리소스 및 이에 관한 조건을 계정에 속한 다수의 사용자, 그룹 및 역할에게 독립적으로 연결할 수 있는 정책.

인라인 정책 = 자신이 생성 및 관리하며, 단일 사용자, 그룹 또는 역할에 직접 포함되는 정책( 권장하지 않음 )

자격 증명 기반 정책을 예로 들면 chlyoo@shinsegae.com 이라는 사용자에게 ListUsers를 허용하는 정책을 연결할 수 있다. 이를 관리형 권한 또는 인라인 권한으로 부여할 수 있다.

리소스 기반 정책 (신뢰 정책)

리소스 기반 정책은 지정된 보안 주체가 해당 리소스에 대해 수행할 수 있는 작업 및 이에 관한 조건을 제어한다. 리소스 기반 정책 = > 인라인 정책이며 관리형 리소스 기반 정책은 없다. CloudTrail에서 S3 버켓, Amazon SNS에 리소스 기반 정책을 연결할 수 있다.


IAM 정책 구조(JSON)

IAM 정책 생성기

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Stmt1623740937356",
      "Action": "*",
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}

IAM 역할

역할은 특정 권한을 가진 계정에 생성할 수 있는 IAM 자격 증명(Credential) 이다.

AWS 리소스에 사용자, 애플리케이션에게 액세스 권한을 일시적으로 위임할 수 있다.

Ex)관리형 정책중에 PowerUser 권한이 있다.

역할을 사용할 수 있는 주체:

  • 동일한 AWS 계정의 IAM 사용자
  • 역할과 다른 AWS 계정의 IAM 사용자
  • Amazon EC2와 같은 AWS가 제공하는 서비스
  • SAML 2., OpenID Connect, 자격증명 브로커, IdP에 의해 인증된 외부 사용자

AWS IAM BestPractice

  • AWS 계정 루트 사용자의 액세스 키 삭제
  • 관리를 위한 개별 IAM 사용자 생성
  • 그룹을 이용한 사용자 별 권한 할당
  • 최소권한 부여 원칙
  • 강력한 암호 정책
  • MFA 활성화
  • 자격증명 하드코딩 하지 않고 역할 사용

Active Directory (Federation)

추가학습할 내용 OpenID, SAML2.0

AD Connector

온프레미스 사용자가 Active Directory를 통해서 AWS 서비스에 액세스할 수 있도록 지원 SAML 지원 MFA 지원

Simple AD

소규모의 저렴한 기본 Active Directory 기능 제공 SAML 지원 MFA 지원 X

AWS Managed Microsoft AD

AWS 클라우드에서 관리형 Active Directory를 사용할 수 있도록 지원 SAML지원 MFA 지원


비용

추가 비용 없이 제공된다.

Related Posts

답글 남기기

이메일 주소는 공개되지 않습니다.

%d 블로거가 이것을 좋아합니다: