AWS Identity and Access Management
사용 설명서

IAM 사용자

AWS Identity and Access Management(IAM) 사용자는 AWS에서 생성하는 엔터티로서 AWS와 상호 작용하기 위해 그 엔터티를 사용하는 사람 또는 애플리케이션을 나타냅니다. AWS에서 사용자는 이름과 자격 증명으로 구성됩니다.

관리자 권한을 가진 IAM 사용자는 AWS 계정 루트 사용자와 같은 것이 아닙니다. 루트 사용자에 대한 자세한 정보는 AWS 계정 루트 사용자 단원을 참조하십시오.

중요

애플리케이션이나 웹 사이트에 Amazon Advertising을 활성화하려는 중에 이 페이지로 오게 된 경우, Product Advertising API 구독 단원을 참조하십시오.

AWS가 IAM 사용자를 식별하는 방법

사용자를 생성하면 IAM이 그 사용자를 식별하기 위한 방법을 다음과 같이 생성합니다.

  • 사용자 생성시 지정한 이름으로서 Richard 또는 Anaya와 같은 사용자가 "쉽게 알 수 있는 이름"입니다. 이 이름들은 AWS Management 콘솔에서 볼 수 있습니다.

  • 사용자의 Amazon 리소스 이름(ARN)입니다. 모든 AWS 전반에 사용자를 특별하게 식별할 필요가 있는 경우 ARN을 사용합니다. 예를 들어, ARN을 사용하여 사용자를 Amazon S3 버킷에 대한 IAM 정책에서 Principal로서 지정할 수 있습니다. IAM 사용자의 ARN은 다음과 같은 모습입니다.

    arn:aws:iam::account-ID-without-hyphens:user/Richard

  • 사용자의 고유 식별자입니다. 이 ID는 사용자를 생성하기 위해 API, Windows PowerShell용 도구 또는 AWS CLI를 사용할 때만 반환됩니다. 콘솔에서는 이 ID를 볼 수 없습니다.

이 식별자에 대한 자세한 정보는 IAM 식별자 단원을 참조하십시오.

사용자 및 자격 증명

AWS는 사용자 자격 증명에 따라 다양한 방법으로 액세스할 수 있습니다.

  • 콘솔 암호: 사용자가 입력해 AWS Management 콘솔과 같은 상호 작용 세션으로 로그인할 수 있는 암호.

  • 액세스 키: 액세스 키 ID와 보안 액세스 키의 조합입니다. 한 사용자에게 한 번에 두 개를 지정할 수 있습니다. 이것들은 AWS를 프로그래밍 방식으로 호출하는 데 사용될 수 있습니다. 예를 들어, AWS CLI 또는 AWS PowerShell 도구를 사용할 때 코드 또는 명령 프롬프트에 대한 API를 사용할 경우 액세스 키를 사용할 수 있습니다.

  • CodeCommit용 SSH 키: CodeCommit를 사용한 인증에 사용할 수 있는 OpenSSH 형식의 SSH 퍼블릭 키.

  • 서버 인증서: 일부 AWS 서비스를 사용한 인증에 사용할 수 있는 SSL/TLS 인증서. 서버 인증서를 프로비저닝 및 관리하고 배포할 때 AWS Certificate Manager(ACM)을 사용하는 것이 좋습니다. ACM에서 지원되지 않는 리전에서 HTTPS 연결을 지원해야 하는 경우에만 IAM을 사용합니다. ACM을 지원하는 리전을 알아보려면 AWS General ReferenceAWS Certificate Manager 리전 및 엔드포인트를 참조하십시오.

IAM 사용자에게 적절한 자격 증명을 선택할 수 있습니다. AWS Management 콘솔을 사용하여 사용자를 생성할 때 최소한 콘솔 암호 또는 액세스 키를 포함하도록 선택해야 합니다. 기본적으로 AWS CLI 또는 AWS API를 사용하여 새로 생성된 IAM 사용자는 어떤 종류의 자격 증명도 보유하지 않습니다. 사용자의 요구 사항을 기반으로 IAM 사용자에 대한 자격 증명의 유형을 생성해야 합니다.

다음 옵션을 이용해 암호, 액세스 키 및 MFA 디바이스를 관리하십시오.

  • IAM 사용자 암호 관리. AWS Management 콘솔에 대한 액세스를 허용하는 암호를 생성 및 변경합니다. 암호 정책을 최소 암호 복잡성을 적용하도록 설정 사용자에게 자신의 암호를 변경할 수 있도록 허용

  • IAM 사용자의 액세스 키 관리. 계정의 리소스에 대한 프로그래밍 방식의 액세스를 위해 액세스 키를 생성하고 업데이트합니다.

  • 사용자에 대해 멀티 팩터 인증(MFA)을 활성화하여 해당 사용자 자격 증명의 보안을 강화할 수 있습니다. MFA를 사용할 경우 사용자는 두 가지 형식의 식별이 가능합니다. 먼저, 사용자는 자격 증명(암호 또는 액세스 키)의 일부분인 자격 증명을 제공합니다. 또한, 하드웨어 디바이스에서나 스마트폰 또는 태블릿의 애플리케이션을 통해서 생성된 또는 SMS 호환성 모바일 디바이스로 AWS가 보낸 임시 숫자 코드를 제공해야 합니다.

  • 미사용 암호 및 액세스 키 찾기. 계정 또는 계정 내 IAM 사용자에 대한 암호 또는 액세스 키를 보유하는 사람은 누구든지 AWS 리소스에 대한 액세스 권한이 있습니다. 보안 모범 사례는 사용자에게 암호와 액세스 키가 필요하지 않을 때 그것들을 제거하는 것입니다.

  • 계정의 자격 증명 보고서 다운로드. 계정의 모든 IAM 사용자와 암호, 액세스 키, MFA 디바이스를 포함하여 이들의 자격 증명 상태를 나열하는 자격 증명 보고서를 생성하고 다운로드할 수 있습니다. 암호와 액세스 키의 경우 자격 증명 보고서를 통해 암호 또는 액세스 키가 언제 마지막으로 사용되었는지 알 수 있습니다.

사용자 및 권한

기본적으로 신규 IAM 사용자는 어떤 작업도 할 수 있는 권한이 없습니다. 사용자는 AWS 작업을 수행하거나 AWS 리소스에 액세스할 수 있는 권한이 없습니다. 개별 IAM 사용자를 두면 각 사용자에게 개별적으로 권한을 할당할 수 있다는 장점이 있습니다. 사용자 몇 명에게 관리 권한을 할당하면 이들이 AWS 리소스를 관리하고 다른 IAM 사용자까지 생성하고 관리할 수 있습니다. 그러나 대부분의 경우 사용자의 업무에 필요한 작업(AWS 작업)과 리소스로 사용자의 권한을 제한합니다.

Diego라는 사용자가 있다고 가정해 보겠습니다. IAM 사용자 Diego를 생성하면 그 사용자의 암호를 생성할 수 있습니다. 특정 Amazon EC2 인스턴스를 시작하고(GET) 정보를 Amazon RDS 데이터베이스의 테이블에서 읽을 수 있도록 IAM 사용자에게 권한을 부여합니다. 사용자를 생성하여 초기 자격 증명과 권한을 부여하는 절차는 AWS 계정의 IAM 사용자 생성 단원을 참조하십시오. 기존 사용자에 대한 권한을 변경하는 절차는 IAM 사용자의 권한 변경 단원을 참조하십시오. 사용자의 암호나 액세스 키를 변경하는 절차는 암호 관리IAM 사용자의 액세스 키 관리 단원을 참조하십시오.

사용자에게 권한 경계를 추가할 수 있습니다. 권한 경계는 AWS 관리형 정책을 사용하여 자격 증명 기반 정책이 사용자 또는 역할에 부여할 수 있는 최대 권한을 제한할 수 있는 고급 기능입니다. 정책 유형 및 활용에 대한 자세한 정보는 정책 및 권한 단원을 참조하십시오.

사용자 및 계정

각 IAM 사용자는 오직 한 개의 AWS 계정과만 연결됩니다. 사용자는 AWS 계정 내에서 정의되기 때문에 AWS에서 파일에 결제 방법을 저장해 두지 않아도 됩니다. 계정에 속한 사용자가 수행하는 모든 AWS 활동은 해당 계정으로 청구됩니다.

AWS 계정에서 보유할 수 있는 IAM 사용자 수는 제한되어 있습니다. 자세한 정보는 IAM 개체 및 객체에 대한 제한 단원을 참조하십시오.

서비스 계정인 사용자

IAM 사용자는 연결된 자격 증명 및 권한을 지닌 IAM의 리소스입니다. IAM 사용자는 자격 증명을 사용하여 AWS 요청을 생성하는 사용자 또는 애플리케이션을 나타낼 수 있습니다. 이를 일반적으로 서비스 계정이라 합니다. 애플리케이션에 있는 IAM 사용자의 장기 자격 증명을 사용하기로 선택한 경우 액세스 키를 애플리케이션 코드에 직접 포함시키지 마십시오. AWS SDK 및 AWS Command Line Interface를 사용하면 코드에서 유지할 필요가 없도록 알려진 위치에 액세스 키를 추가할 수 있습니다. 자세한 정보는 AWS General Reference적절하게 IAM 사용자 액세스 키 관리 단원을 참조하십시오. 또는 모범 사례로서 장기 액세스 키 대신 임시 보안 자격 증명(IAM 역할)을 사용할 수 있습니다.