AWS Identity and Access Management
사용 설명서

자격 증명(사용자, 그룹, 및 역할)

이 섹션에서는 AWS 계정의 사용자와 프로세스에 대한 인증을 제공하기 위해 생성하는 IAM 자격 인증을 설명합니다. 이 섹션은 또한 한 단위로 관리할 수 있는 IAM 사용자 집합인 IAM 그룹에 대해서도 설명합니다. 자격 증명은 사용자를 대표하며, 인증된 후 AWS에서 작업을 수행할 수 있는 권한을 부여받습니다. 각 자격 증명은 1개 이상의 정책과 연결되어 사용자, 역할 또는 그룹 구성원이 어떤 AWS 리소스로 어떤 조건에서 어떤 작업을 할지 결정할 수 있습니다.

AWS 계정 루트 사용자

Amazon Web Services(AWS) 계정을 처음 생성하는 경우에는 전체 AWS 서비스 및 계정 리소스에 대해 완전한 액세스 권한을 지닌 단일 로그인 자격 증명으로 시작합니다. 이 자격 증명은 AWS 계정 루트 사용자라고 하며, 계정을 생성할 때 사용한 이메일 주소와 암호로 로그인하여 액세스합니다.

중요

일상적인 작업, 심지어 관리 작업의 경우에도 루트 사용자를 사용하지 않는 것이 좋습니다. 대신, IAM 사용자를 처음 생성할 때만 루트 사용자를 사용하는 모범 사례를 준수하십시오. 그런 다음 루트 사용자를 안전하게 보관해 두고 몇 가지 계정 및 서비스 관리 작업을 수행할 때만 자격 증명을 사용합니다. 루트 사용자로 로그인해야 하는 작업을 보려면 루트 사용자가 필요한 AWS 작업을 참조하십시오.

IAM 사용자

IAM 사용자는 AWS에서 만드는 엔터티입니다. IAM 사용자는 IAM 사용자를 사용하여 AWS와 상호 작용하는 사람 또는 서비스를 나타냅니다. IAM 사용자의 주된 용도는 대화형 작업을 위해 AWS Management 콘솔에 로그인하고 API 또는 CLI를 사용해 AWS 서비스로 프로그래밍 방식의 요청을 보내는 데 사용할 수 있는 능력을 사람들에게 제공하는 것입니다. AWS에서 사용자는 이름, AWS Management 콘솔에 로그인할 암호, 그리고 API 또는 CLI와 함께 사용할 수 있는 2개의 액세스 키로 이루어져 있습니다. IAM 사용자를 생성하는 경우, 그 사용자를 적절한 권한 정책이 연결된 그룹의 구성원으로 만들거나(이 방식을 추천함) 그 사용자에게 정책을 직접 연결하여 권한을 부여합니다. 기존 IAM 사용자의 권한을 복제하여 신규 사용자를 자동으로 같은 그룹의 구성원으로 만들고 동일한 정책을 모두 연결할 수도 있습니다.

IAM 그룹

IAM 그룹은 IAM 사용자들의 집합입니다. 그룹을 활용하면 사용자 모음에 대한 권한을 지정하여 해당 사용자에 대한 권한을 더 쉽게 관리할 수 있습니다. 예를 들어 Admins라는 그룹을 만들어 일반적으로 관리자에게 필요한 유형의 권한을 부여할 수 있습니다. 이 그룹에 할당된 권한이 이 그룹에 속하는 모든 사용자에게 자동으로 부여됩니다. 관리자 권한을 필요로 하는 새로운 사용자가 조직에 들어올 경우 해당 사용자를 이 그룹에 추가하여 적절한 권한을 할당할 수 있습니다. 마찬가지로 조직에서 직원의 업무가 바뀌면 해당 사용자의 권한을 편집하는 대신 이전 그룹에서 해당 사용자를 제거한 후 적절한 새 그룹에 추가하면 됩니다. 그룹은 리소스 기반 정책 또는 신뢰 정책에서 Principal로 식별될 수 없기 때문에 진정한 자격 증명이 아니라는 점에 유의하십시오. 그것은 다수의 사용자에게 한 번에 정책을 연결하는 방법일 뿐입니다.

IAM역할

AWS에서 자격 증명이 할 수 있는 것과 없는 것을 결정하는 권한 정책을 갖춘 자격 증명이라는 점에서 IAM 역할은 사용자와 아주 유사합니다. 그러나 역할은 그와 연관된 어떤 자격 증명(암호 또는 액세스 키)도 없습니다. 역할은 한 사람과만 연관되는 것이 아니라 그 역할이 필요한 사람이면 누구든지 맡을 수 있도록 고안되었습니다. IAM 사용자는 한 가지 역할을 맡음으로써 특정 작업을 위해 다른 권한을 임시로 얻을 수 있습니다. 역할은 IAM 대신에 외부 자격 증명 공급자를 사용해 로그인하는 연동 사용자에게 할당될 수 있습니다. AWS는 자격 증명 공급자가 전달하는 세부 정보를 사용해 연동 사용자에게 어떤 역할을 매핑할지 결정합니다.

임시 자격 증명

임시 자격 증명은 기본적으로 IAM 역할에 사용되지만 다른 용도로도 사용됩니다. 일반 IAM 사용자보다 제한된 권한을 갖는 임시 자격 증명을 요청할 수 있습니다. 이렇게 하면 제한된 자격 증명으로는 허용되지 않는 작업을 뜻하지 않게 수행하는 것을 방지할 수 있습니다. 임시 자격 증명의 장점은 설정한 기간이 지나면 자동으로 만료된다는 것입니다. 자격 증명의 유효 기간을 통제할 수 있습니다.

IAM 사용자를 만들어야 하는 경우(역할이 아님)

IAM 사용자는 계정에서 특정 권한을 갖는 자격 증명일 뿐이므로 자격 증명이 필요한 모든 경우를 위해 IAM 사용자를 만들 필요는 없습니다. 많은 경우 IAM 사용자와 연결된 장기 자격 증명 대신 IAM 역할과 그 역할들의 임시 보안 자격 증명을 활용할 수 있습니다.

  • AWS 계정을 만들었는데 계정 내에 다른 사람이 없는 경우

    AWS 계정의 루트 사용자 자격 증명을 사용하여 AWS로 작업할 수 있지만 이 방법은 권장하지 않습니다. 그 대신 자신을 위한 IAM 사용자를 만들고 AWS로 작업할 때 해당 사용자의 자격 증명을 사용하실 것을 권합니다. 자세한 내용은 IAM 모범 사례 단원을 참조하십시오.

  • 그룹에 속한 다른 사람들이 AWS 계정에서 작업해야 하며 이 그룹이 다른 자격 증명 메커니즘을 사용하고 있지 않는 경우

    AWS 리소스에 액세스해야 하는 사람 각자에 대해 IAM 사용자를 만들어 각 사용자에게 적절한 권한을 할당하고 고유한 자격 증명을 부여합니다. 다수의 사용자들이 자격 증명을 공유하는 일이 절대 없도록 해주십시오.

  • 명령줄 인터페이스(CLI)를 사용하여 AWS로 작업하려는 경우

    CLI는 AWS를 호출하는 데 사용할 수 있는 자격 증명이 필요합니다. IAM 사용자를 만들고 필요한 CLI 명령을 실행할 권한을 해당 사용자에게 부여합니다. 그런 다음 해당 IAM 사용자에 연결된 액세스 키 자격 증명을 사용할 수 있도록 컴퓨터에서 CLI를 구성합니다.

IAM 역할을 만들어야 하는 경우(사용자가 아님)

다음 상황에서 IAM 역할을 만듭니다.

Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에서 실행되는 애플리케이션을 만들고 그 애플리케이션이 AWS로 요청을 보내는 경우.

IAM 사용자를 만들어 해당 사용자의 자격 증명을 애플리케이션에 전달하거나 자격 증명을 애플리케이션에 포함하지 않습니다. 그 대신에 EC2 인스턴스에 연결하는 IAM 역할을 생성해 인스턴스에서 실행되는 애플리케이션에 임시 보안 자격 증명을 부여하십시오. 자격 증명은 역할에 연결된 정책에 지정된 권한을 갖습니다. 세부 정보는 IAM 역할을 사용하여 Amazon EC2 인스턴스에서 실행되는 애플리케이션에 권한 부여하기 단원을 참조하십시오.

휴대폰에서 실행되는 앱을 만들고 그 앱이 AWS로 요청을 보내는 경우

IAM 사용자를 만들어 앱을 통해 해당 사용자의 액세스 키를 배포하지 않습니다. 대신 Login with Amazon, Amazon Cognito, Facebook 또는 Google과 같은 자격 증명 공급자를 사용하여 사용자를 인증한 다음 사용자를 IAM 역할에 매핑하십시오. 앱은 역할을 사용함으로써 역할에 연결된 정책에 의해 지정된 권한을 갖는 임시 보안 자격 증명을 얻을 수 있습니다. 자세한 내용은 다음 자료를 참조하십시오.

회사의 사용자들이 기업 네트워크에서 인증을 받았는데 다시 로그인하지 않고도 AWS를 사용할 수 있기를 원합니다. 즉, 사용자들이 AWS로 연동되도록 허용하고 싶습니다.

IAM 사용자는 만들지 마십시오. 엔터프라이즈 자격 증명 시스템과 AWS 사이의 연동 관계를 구성하십시오. 두 가지 방법으로 수행할 수 있습니다.