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 管理ポリシーのアタッチ
この例のポリシーは、ユーザーに「Power User Access」を付与します。
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
ユーザーが作成できるアクセスキーは一度に 2 つのみです。3 番目のセットを作成しようとすると、コマンドは 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