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 사용자 및 그룹 생성
그룹을 생성하고 이 그룹에 새 사용자를 추가하려면
-
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": "/" } } -
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
" } } -
add-user-to-group
명령을 사용하여 사용자를 그룹에 추가합니다. $
aws iam add-user-to-group --user-name
MyUser
--group-nameMyIamGroup
-
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 관리형 정책을 연결하려면
-
연결할 정책의 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
-
정책을 연결하려면
attach-user-policy
명령을 사용하고 정책 ARN을 보유하는 환경 변수를 참조합니다. $
aws iam attach-user-policy --user-name
MyUser
--policy-arn $POLICYARN
-
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
--passwordMy!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
--passwordMy!User1ADifferentP@ssword
IAM 사용자의 액세스 키 생성
create-access-key
사용자는 한 번에 두 개의 액세스 키만 생성할 수 있습니다. 세 번째 세트를 생성하려 할 경우 이 명령은 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
$
aws iam delete-access-key --user-name
MyUser
--access-key-id AKIAIOSFODNN7EXAMPLE