IAM在 AWS CLI - AWS Command Line Interface

本文档 AWS CLI 仅适用于版本 1。有关版本 2 的文档 AWS CLI,请参阅版本 2 用户指南

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

IAM在 AWS CLI

简介 AWS Identity and Access Management

您可以使用 () 访问 AWS Identity and Access Management (IAM) 的 AWS Command Line Interface 功能。AWS CLI要列出针对的 AWS CLI 命令IAM,请使用以下命令。

aws iam help

本主题显示了执行常见任务的 AWS CLI 命令示例IAM。

在运行任何命令之前,请设置默认证书。有关更多信息,请参阅 为配置设置 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用于查找名称为ARN的策略PowerUserAccess。然后它将其存储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-policyattach-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