- IAM 사용자는 AWS 리소스와 상호 작용하는 방법을 제공하는 AWS에서 생성된 엔터티입니다.
- IAM 사용자의 주요 목적은 AWS Management Console에 로그인하여 AWS 서비스에 요청할 수 있다는 것입니다.
- 새롭게 생성된 IAM 사용자 비밀번호도 없고 액세스 키도 없습니다. 사용자가 AWS Management Console을 통해 AWS 리소스를 사용하려면 사용자 암호를 생성해야 합니다. 사용자가 프로그래밍 방식으로(CLI(명령줄 인터페이스) 사용) AWS를 사용하여 상호 작용하려는 경우 해당 사용자에 대한 액세스 키를 생성해야 합니다. IAM 사용자에 대해 생성된 자격 증명은 AWS에서 자신을 고유하게 식별하는 것입니다.
- 다중 요소 인증(Multi-Factor Authentication) 기능을 사용하여 사용자 자격 증명의 보안을 강화할 수 있습니다.
- 새로 생성된 IAM 사용자에게는 권한이 없습니다. 즉, AWS 리소스에 액세스할 권한이 없습니다.
- 개별 IAM 사용자를 사용하면 권한을 개별적으로 할당할 수 있다는 장점이 있습니다. AWS 리소스를 관리하고 다른 IAM 사용자도 관리할 수 있는 관리 권한을 할당할 수도 있습니다.
- 주로 사용자의 권한은 AWS 작업 및 리소스, 즉 IAM 사용자에게 할당된 작업으로 설정됩니다. 예를 들어, 이름이 Advita인 IAM 사용자를 생성하고 해당 사용자에 대한 암호를 생성한 후 해당 사용자가 Amazon EC2 인스턴스를 시작하고 Amazon RDS 데이터베이스에서 데이터를 읽을 수 있는 권한을 설정합니다.
- 각 IAM 사용자는 단 하나의 AWS 계정과 연결됩니다.
- 사용자는 귀하의 계정 내에서 정의되므로 사용자가 결제를 할 필요가 없습니다. 사용자가 수행한 모든 AWS 활동은 귀하의 계정으로 청구됩니다.
IAM 사용자는 반드시 사람이 아닙니다
IAM 사용자가 반드시 사람을 대표하는 것은 아닙니다. IAM 사용자는 관련 권한이 있는 자격 증명일 뿐입니다. 또한 IAM 사용자를 생성하여 AWS 서비스에 액세스하기 위해 자격 증명이 필요한 애플리케이션을 나타낼 수도 있습니다.
IAM 사용자 생성(AWS Management 콘솔)
AWS Management Console을 사용하여 사용자를 생성하려면:
- AWS 관리 콘솔에 로그인합니다.
- https://console.aws.amazon.com/iam/home?region=us-east-2#/home에서 IAM 콘솔을 엽니다. 아래와 같은 화면이 나타납니다.
- 탐색 창에서 사용자를 클릭합니다. 사용자를 클릭하면 아래와 같은 화면이 나타납니다.
- 계정에 새로운 사용자를 추가하려면 사용자 추가를 클릭하세요. 사용자 추가를 클릭하면 아래와 같은 화면이 나타납니다.
- 생성하려는 사용자의 사용자 이름을 입력합니다. 한 번에 5명의 사용자를 생성할 수 있습니다.
- AWS 액세스 유형을 선택합니다. 사용자가 프로그래밍 방식의 액세스 권한, AWS Management Console 액세스 권한 또는 둘 다를 가지기를 원합니다.
- 또한 사용자에게 자신의 보안 자격 증명을 관리할 수 있는 권한을 부여할 수도 있습니다.
IAM 사용자 생성(CLI 또는 API)
- 사용자 생성
CLI command: aws iam create-user API command: CreateUser
- 사용자가 AWS Management Console을 사용하도록 하려는 경우 필요한 암호와 같은 보안 자격 증명을 사용자에게 할당할 수 있습니다.
CLI command: aws iam create-login-profile API command: CreateLoginProfile
- 사용자가 프로그래밍 방식으로 AWS 리소스에 액세스해야 하는 경우 필요한 사용자용 액세스 키를 생성합니다.
CLI command: aws iam create-access-key API command: CreateAccessKey
- 권한을 정의하는 사용자에게 정책을 연결합니다.
CLI command: aws iam attach-user-policy API command: AttachUserPolicy
- 사용자는 하나 이상의 그룹에 추가될 수 있습니다.
CLI command: aws iam add-user-to-group API command: AddUserToGroup
IAM 사용자가 AWS 계정에 로그인하는 방법
- https://us-east-1.signin.aws.amazon.com/ 링크를 열어 AWS 계정에 로그인합니다.
- IAM 사용자는 IAM 콘솔에 로그인하기 위해 귀하가 할당한 사용자 이름과 비밀번호를 입력합니다.
IAM 사용자 나열(AWS Management 콘솔)
- 이메일 주소와 비밀번호를 입력하여 AWS Management Console에 로그인합니다.
- IAM 콘솔을 엽니다.
- 탐색 창에서 사용자를 클릭하면 아래와 같은 화면이 나타납니다.
위 화면에는 이미 사용자입니다 이름이 MyUser인 존재합니다.
그룹의 모든 사용자 나열(AWS Management Console)
- 이메일 주소와 비밀번호를 입력하여 AWS Management Console에 로그인합니다.
- IAM 콘솔을 엽니다.
- 탐색 창에서 그룹을 클릭하면 아래와 같은 화면이 나타납니다.
위 화면에는 그룹이 존재하지 않는 것으로 표시됩니다.
모든 사용자 나열(CLI 및 API)
- 계정의 모든 사용자를 나열합니다.
CLI command : aws iam list-users API command : ListUsers
- 특정 그룹의 사용자를 나열합니다.
CLI command : aws iam get-group API command : GetGroup
- 특정 사용자가 존재하는 모든 그룹을 나열합니다.
CLI command : aws iam list-groups-for-user API command : ListGroupsForUser
IAM 사용자 삭제(AWS Management 콘솔)
- AWS 관리 콘솔에 로그인합니다.
- IAM 콘솔을 엽니다.
- 탐색 창에서 사용자를 클릭합니다.
- 사용자 이름 옆에 나타나는 확인란을 선택합니다.
- 페이지 상단의 사용자 작업 목록에서 사용자 삭제를 선택합니다.
- 예, 삭제를 클릭하세요.
IAM 사용자 삭제(AWS CLI)
- 사용자가 AWS 계정에 액세스할 수 없도록 사용자의 키와 인증서를 삭제합니다.
aws iam delete-access-key aws iam delete-signing-certificate
- 사용자에게 비밀번호가 포함된 경우 사용자의 비밀번호를 삭제합니다.
aws iam delete-login-profile
- 사용자에게 MFA 디바이스가 있는 경우 해당 MFA 디바이스를 비활성화합니다.
aws iam deactivate-mfa-device
- 사용자에게 연결된 정책을 분리할 수도 있습니다.
aws iam list-attached-user-policies → list the policies that are attached to the user aws iam detach-user-policy → Detach the policies that are attached to the user
- 사용자가 속한 그룹 목록을 가져온 다음 그룹에서 사용자를 제거합니다.
aws iam list-groups-for-user // list all the groups that the user was in. aws iam remove-user-from-group // Remove the users from a group.
- 사용자 삭제
aws iam delete-user