AWS

AWS IAM Role 이란?

와니's(Wani) 2021. 3. 4. 00:05

IAM Role 이란?

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

 

역할과 사용자 모두 AWS에서 자격증명으로 할수 있는것과 없는것을 결정하는 권한 정책을 포함하는 AWS 자격 증명입니다.

 

 

IAM 역할은 다음과 같은 주체가 있습니다.

  • AWS 계정의 IAM 사용자
  • AWS의 서비스
  • 외부 자격 증명 공급자 서비스에 의해 인증된 외부 사용자

 

특징

 

  • 액세스 키와 같은 표준 가기 자격증명이 없습니다.
  • 임시 보안 자격 증명을 제공합니다.
  • 한 사람과만 연관되지 않고 해당 역할이 필요한 사람이라면 누구든지 맡을 수 있어야 합니다.

 

역할의 주체

 

  • 동일한 AWS 계정의 IAM 사용자
  • 역할과 다른 AWS 계정의 IAM 사용자
  • Ec2 , CodeDeploy 등 AWS가 제공하는 웹 서비스
  • SAML 2.0 , OpenID Connect 또는 사용자 지정 구축 자격 증명 브로커와 호환되는 외부 자격증명 공급자 서비스에 의해 인증된 외부 사용자

AWS Console에서 계정 전환하기

 

IAM 역할 생성

 

역할을 만들기 위해서 IAM에 들어가 줍니다.

 

 

좌측 탭에 있는 역할을 선택 한 후 역할 만들기를 눌러줍니다.

 

  • AWS 서비스
    • 사용자 대신하여 작업을 수행 할 수 있도록 허용할 수 있습니다.
  • 다른 AWS 계정
    • 다른 계정의 개체가 이 계정에서 작업을 수행할 수 있도록 허용합니다.

  • 외부 ID 필요선택
    • AWS 계정 소유자이고 다른 AWS 계정에도 엑세스 하는 타사를 위한 역할을 구성가능합니다.
  • MFA를 선택
    • 역할을 전환할 때마다 MFA 인증을 받을 수 있게 선택할 수 있습니다.

 

 

 

역할에 필요한 정책들을 선택해서 골라줍니다.

그 후 태그를 지정해 줍니다.

 

 

역할 이름을 지정하고 역할 설명을 작성한 후 역할을 생성해 줍니다.

 


User에 sts:AssumeRole 정책 추가

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

정책에 위와 같이 Action에 "sts:AssumeRole"이 있는지 확인 해주고 없으면 추가 할 수 있습니다.
sts:AssumeRole는 임시 자격 증명을 받을 수 있는 정책 입니다.

 

 

 

만들어 둔 정책을 사용자 계정의 정책에 적용합니다.

 


IAM Role 전환

콘솔에서 계정을 선택하게 되면 역할 전환을 선택할 수 있습니다.

  • 계정
    • 사용자의 Account ID
  • 역할
    • 위에서 생성한 역할의 이름을 적을수 있습니다.
  • 표시이름
    • 우측 상단에 표시될 이름을 적을수 있습니다.
  • 색상
    • 우측 상단에 표시될 색상을 선택할 수 있습니다.

성공적으로 역할이 변환이 되면 우측 상단이 위에서 지정한 색상 및 표시 이름으로 바뀌는
모습을 볼 수 있습니다.

주의할 점은 IAM Role은 IP로 기억하기 때문에 다른 IP로 접속을 하면 등록한 ROLE들은 사라집니다.