AWS CLI에서 IAM 사용 - AWS Command Line Interface

AWS CLI에서 IAM 사용

AWS Identity and Access Management 소개

AWS Command Line Interface(AWS CLI)를 사용하여 AWS Identity and Access Management(IAM) 기능에 액세스할 수 있습니다. IAM에 대한 AWS CLI 명령을 나열하려면 다음 명령을 사용합니다.

aws iam help

이 주제에서는 IAM에 대한 일반적인 태스크를 수행하는 AWS CLI 명령의 예제를 보여줍니다.

명령을 실행하기 전에 기본 자격 증명을 설정합니다. 자세한 내용은 AWS CLI 설정 구성 섹션을 참조하세요.

IAM 서비스에 대한 자세한 내용은 AWS Identity and Access Management 사용 설명서를 참조하세요.

IAM 사용자 및 그룹 생성

그룹을 생성하고 이 그룹에 새 사용자를 추가하려면
  1. create-group 명령을 사용하여 그룹을 생성합니다.

    $ aws iam create-group --group-name MyIamGroup { "Group": { "GroupName": "MyIamGroup", "CreateDate": "2018-12-14T03:03:52.834Z", "GroupId": "AGPAJNUJ2W4IJVEXAMPLE", "Arn": "arn:aws:iam::123456789012:group/MyIamGroup", "Path": "/" } }
  2. create-user 명령을 사용하여 사용자를 생성합니다.

    $ aws iam create-user --user-name MyUser { "User": { "UserName": "MyUser", "Path": "/", "CreateDate": "2018-12-14T03:13:02.581Z", "UserId": "AIDAJY2PE5XUZ4EXAMPLE", "Arn": "arn:aws:iam::123456789012:user/MyUser" } }
  3. add-user-to-group 명령을 사용하여 사용자를 그룹에 추가합니다.

    $ aws iam add-user-to-group --user-name MyUser --group-name MyIamGroup
  4. MyIamGroup 그룹에 MyUser가 포함되어 있는지 확인하려면 get-group 명령을 사용합니다.

    $ aws iam get-group --group-name MyIamGroup { "Group": { "GroupName": "MyIamGroup", "CreateDate": "2018-12-14T03:03:52Z", "GroupId": "AGPAJNUJ2W4IJVEXAMPLE", "Arn": "arn:aws:iam::123456789012:group/MyIamGroup", "Path": "/" }, "Users": [ { "UserName": "MyUser", "Path": "/", "CreateDate": "2018-12-14T03:13:02Z", "UserId": "AIDAJY2PE5XUZ4EXAMPLE", "Arn": "arn:aws:iam::123456789012:user/MyUser" } ], "IsTruncated": "false" }

사용자에게 IAM 관리형 정책 연결

이 예제의 정책은 사용자에게 "파워 유저 액세스"를 제공합니다.

사용자에게 IAM 관리형 정책을 연결하려면
  1. 연결할 정책의 Amazon 리소스 이름(ARN)을 확인합니다. 다음 명령은 list-policies를 사용하여 이름이 PowerUserAccess인 정책의 ARN을 찾습니다. 그런 다음 해당 ARN을 환경 변수에 저장합니다.

    $ export POLICYARN=$(aws iam list-policies --query 'Policies[?PolicyName==`PowerUserAccess`].{ARN:Arn}' --output text) ~ $ echo $POLICYARN arn:aws:iam::aws:policy/PowerUserAccess
  2. 정책을 연결하려면 attach-user-policy 명령을 사용하고 정책 ARN을 보유하는 환경 변수를 참조합니다.

    $ aws iam attach-user-policy --user-name MyUser --policy-arn $POLICYARN
  3. list-attached-user-policies 명령을 실행하여 정책이 사용자에게 연결되었는지 확인합니다.

    $ aws iam list-attached-user-policies --user-name MyUser { "AttachedPolicies": [ { "PolicyName": "PowerUserAccess", "PolicyArn": "arn:aws:iam::aws:policy/PowerUserAccess" } ] }

자세한 내용은 액세스 관리 리소스를 참조하세요. 이 주제에서는 권한 및 정책 개요에 대한 링크와 Amazon S3, Amazon EC2 및 기타 서비스에 액세스하기 위한 정책 예에 대한 링크를 제공합니다.

IAM 사용자의 초기 암호 설정

다음 명령은 create-login-profile을 사용하여 지정된 사용자의 초기 암호를 설정합니다. 처음으로 로그인한 사용자는 본인만 아는 암호로 변경해야 합니다.

$ aws iam create-login-profile --user-name MyUser --password My!User1Login8P@ssword --password-reset-required { "LoginProfile": { "UserName": "MyUser", "CreateDate": "2018-12-14T17:27:18Z", "PasswordResetRequired": true } }

update-login-profile 명령을 사용하여 사용자의 암호를 변경합니다.

$ aws iam update-login-profile --user-name MyUser --password My!User1ADifferentP@ssword

IAM 사용자의 액세스 키 생성

create-access-key 명령을 사용하여 사용자를 위한 액세스 키를 생성할 수 있습니다. 액세스 키는 액세스 키 ID와 비밀 키로 구성된 보안 자격 증명 세트입니다.

사용자는 한 번에 두 개의 액세스 키만 생성할 수 있습니다. 세 번째 세트를 생성하려 할 경우 이 명령은 LimitExceeded 오류를 반환합니다.

$ aws iam create-access-key --user-name MyUser { "AccessKey": { "UserName": "MyUser", "AccessKeyId": "AKIAIOSFODNN7EXAMPLE", "Status": "Active", "SecretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY", "CreateDate": "2018-12-14T17:34:16Z" } }

delete-access-key 명령을 사용하여 사용자를 위한 액세스 키를 삭제합니다. 액세스 키 ID를 사용하여 삭제할 액세스 키를 지정합니다.

$ aws iam delete-access-key --user-name MyUser --access-key-id AKIAIOSFODNN7EXAMPLE