LogoEurekaCodes
AwsSecurity

[AWS] IAM 역할을 이용하여 임시 권한 부여하기

IAM에서 사용해 볼 수 있는 역할은 특정 IAM 사용자에게 사용자가 가지고 있지 않은 권한을 임시로 부여할 때 활용될 수 있습니다.

역할이란?

IAM에서 사용해 볼 수 있는 역할은 특정 IAM 사용자에게 사용자가 가지고 있지 않은 권한을 임시로 부여할 때 활용될 수 있습니다.

또한 이번 글에서 다루진 않겠지만 역할은 임시 권한 부여뿐만 아니라 EC2, Lambda와 같은 AWS 서비스에서 다른 AWS 서비스 자원에 접근하려고 할 때 사용될 수도 있습니다.

사용자에게 역할을 부여할 때 주의할 점이 있습니다.

특정 IAM 사용자에게 부여된 권한을 이용하여 AWS 서비스를 사용하고 있을 때 해당 사용자에게 역할을 부여해 버리면 기존에 부여되어 있던 권한을 사용할 수 없게 됩니다.

즉, 역할에 적용되어 있던 권한만 사용될 수 있게 되서 기존에 다른 권한이 부여되어 있던 사용자라면 적용할 때 한번 더 확인하여 적용해 볼 필요가 있습니다.

역할 사용 방법

[ 1. IAM 접속 ]

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

[ 2. 역할 만들기 ]

왼쪽에서 "역할" 메뉴를 선택한 뒤 오른쪽에서 "역할 만들기" 버튼을 클릭합니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

그리고 다음과 같이 원하는 설정 값을 입력해주시면 됩니다.

먼저 "엔터티 유형"은 AWS 계정으로 선택해주셔야 합니다.

그 아래 계정 및 옵션은 상황에 맞게 적절하게 설정해주시면 됩니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

다음은 역할에 부여할 권한을 추가해주시면 됩니다.

저는 테스트를 위해 S3 접근 권한만 부여하도록 하겠습니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

마지막으로 역할 이름과 설명을 입력한 뒤 최종 생성해 줍니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

[ 3. STS 정책 생성 ]

역할 전환을 하기 위해서는 사용자에 STS Assume 정책이 적용되어 있어야 합니다.

정책 등록을 하기 위해 가장 먼저 생성했던 역할의 ARN 정보를 카피해 줍니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

그리고 왼쪽에서 "정책" 메뉴를 선택한 뒤 오른쪽에서 "정책 생성"을 클릭합니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

다음으로 가장 먼저 서비스에 sts를 검색한 뒤 sts를 선택해 줍니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

"쓰기" 에서는 AssumeRole을 선택해 주고 "ARN 추가"를 클릭하여 위에서 생성했던 역할을 다음과 같이 추가해 주시면 됩니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

마지막으로 이름과 설명을 입력한 뒤 최종 생성을 합니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

[ 4. 사용자에 STS 정책 적용 ]

역할 전환을 원하는 사용자의 세부 정보로 넘어와 오른쪽에 있는 "권한 추가"를 클릭합니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

그리고 다음과 같이 위에서 생성한 STS 정책을 추가해 줍니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

[ 5. 역할 전환 ]

역할이 생성되었다면 역할 전환을 해보겠습니다.

역할 전환을 하기 위해서는 역할 전환을 수행할 IAM 사용자 계정에 접속을 해줘야 합니다.

역할을 부여하고 싶은 IAM 사용자 계정에 접속한 뒤 다음과 같이 우측 상단에서 "역할 전환"을 클릭합니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

다음으로 나오는 화면에서도 "역할 전환"을 클릭합니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

다음 화면이 보이면 계정 번호와 적용할 역할 이름을 입력해 주시면 됩니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

테스트

역할 전환이 성공적으로 되었다면 역할이 부여된 계정에 접속했을 때 다음과 같은 표시를 확인해 볼 수 있습니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

부여된 역할은 S3만 사용이 가능하기에 다음과 같이 S3에 접속했을 때 아무 문제 없이 사용이 가능한 것을 확인할 수 있습니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

반대로 기존에 사용자가 사용 가능했던 EC2에 접속해 보면 다음과 같이 권한이 적용되어 있지 않을 것을 확인할 수 있습니다.

위에서 말한 것처럼 기존에 권한이 있더라도 역할이 부여되면 부여된 역할이 가지고 있는 권한만 적용되기에 사용하지 못하는 상황입니다.

[AWS] IAM 역할을 이용하여 임시 권한 부여하기 image

원본 출처