管理 IAM 用户 - Amazon Identity and Access Management
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

管理 IAM 用户

注意

作为最佳实践,我们建议您要求人类用户使用带有身份提供程序的联合身份验证才能使用临时凭证访问 Amazon。如果您遵循最佳实践,则无法管理 IAM 用户和组。相反,您的用户和组是在 Amazon 外部进行管理的,并且能够以联合身份访问 Amazon 资源。联合身份是来自企业用户目录、Web 身份提供程序、Amazon Identity Service 的用户,或任何使用通过身份源提供的凭证来访问 Amazon 服务的用户。联合身份使用其身份提供商定义的组。如果您使用的是 Amazon IAM Identity Center,请参阅《Amazon IAM Identity Center 用户指南》中的管理 IAM Identity Center 中的身份,了解有关在 IAM Identity Center 中创建用户和组的信息。

亚马逊云科技提供多种工具来管理 Amazon Web Services 账户 中的 IAM 用户。您可以列出您的账户中或用户组中的 IAM 用户,也可以列出用户所属的所有用户组。您可以重命名或更改 IAM 用户的路径。如果您使用的是联合身份而不是 IAM 用户,则可以从 Amazon 账户中删除 IAM 用户,或停用该用户。

有关添加、更改或删除 IAM 用户的托管策略的更多信息,请参阅 更改 IAM 用户的权限。有关为 IAM 用户管理内联策略的信息,请参阅 添加和删除 IAM 身份权限编辑 IAM policy 删除 IAM policy。作为最佳实践,请使用托管式策略而不是内联策略。Amazon 托管式策略可用于为很多常用案例提供权限。请记住,Amazon 托管策略可能不会为您的特定使用场景授予最低权限许可,因为它们可供所有 Amazon 客户使用。因此,我们建议通过定义特定于您的使用场景的客户管理型策略来减少许可。有关更多信息,请参阅Amazon托管策略。有关专为特定任务函数制定的 Amazon 托管策略的更多信息,请参阅 工作职能的 Amazon 托管策略

要了解有关验证 IAM policy 的更多信息,请参阅 验证 IAM policy

提示

IAM Access Analyzer 可以分析您的 IAM 角色使用的服务和操作,然后生成您可以使用的精细策略。测试每个生成的策略后,可以将该策略部署到生产环境中。这可确保您仅向工作负载授予所需的权限。有关策略生成的更多信息,请参阅 IAM Access Analyzer 策略生成

有关管理 IAM 用户密码的信息,请参阅 管理 IAM 用户的密码

查看用户访问

在删除用户之前,您应查看其最近的服务级别活动。这非常重要,因为您不想删除使用它的主体(个人或应用程序)的访问权限。有关查看上次访问的信息的更多信息,请参阅使用上次访问的信息优化 Amazon 中的权限

列出 IAM 用户

您可以将 IAM 用户列在您的 Amazon Web Services 账户 或特定 IAM 用户组中,并列出用户所属的所有用户组。有关为列出用户而需要的权限的信息,请参阅访问 IAM 资源所需的权限

列出账户中的所有用户

列出特定用户组中的用户

列出用户所属的所有用户组

重命名 IAM 用户

要更改用户的名称或路径,必须使用 Amazon CLI、Tools for Windows PowerShell 或 Amazon API。控制台中没有用于重命名用户的选项。有关为将用户重命名而需要的权限的信息,请参阅访问 IAM 资源所需的权限

当您更改用户名或路径时,发生以下情况:

  • 应用于用户的所有策略采用新用户名继续生效.

  • 采用新用户名的用户保留在原来的用户组。

  • 用户的唯一 ID 保持不变。有关唯一 ID 的更多信息,请参阅 唯一标识符

  • 任何将该用户视为主体(向该用户授予访问权限)的资源或角色策略均自动更新以使用新用户名或路径。例如,Amazon SQS 中任何基于队列的策略或 Amazon S3 中任何基于资源的策略都会自动更新,以使用新名称和路径。

IAM 不自动更新将该用户视为资源的策略以使用新用户名或路径;必须由您手动更新。例如,假设向用户 Richard 附加了一个策略,该策略使该用户可管理其自己的安全凭证。如果管理员将 Richard 重命名为 Rich,则管理员还需要更新该策略以将资源从此:

arn:aws:iam::111122223333:user/division_abc/subdivision_xyz/Richard

改为此:

arn:aws:iam::111122223333:user/division_abc/subdivision_xyz/Rich

如果管理员更改路径,则也会发生这种情况;管理员需要更新策略以反映该用户使用新路径。

重命名用户

删除 IAM 用户

如果 IAM 用户退出贵公司,则可从您的 Amazon Web Services 账户 中删除该用户。如果该用户暂时退出,则可停用其访问权限,而不是如 停用 IAM 用户 中所述将其从账户中删除。

删除 IAM 用户(控制台)

使用 Amazon Web Services Management Console 删除 IAM 用户时,IAM 将自动删除以下信息:

  • 用户

  • 任何用户组成员资格 — 也就是说,该用户将从所属的任何 IAM 用户组中删除

  • 任何与该用户关联的密码

  • 属于该用户的任何访问密钥

  • 嵌入到该用户中的所有内联策略(通过用户组权限应用于用户的策略不受影响)

    注意

    当您删除用户时,IAM 会移除附加到用户的任何托管策略,但不会删除托管策略。

  • 任何关联的 MFA 设备

删除 IAM 用户(控制台)
  1. 登录Amazon Web Services Management Console,然后通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择 Users(用户),然后选中要删除的用户旁的复选框。

  3. 在页面的顶部,选择删除用户

  4. 在确认对话框中,在文本输入字段中输入用户名以确认删除用户。选择 Delete(删除)。

删除 IAM 用户 (Amazon CLI)

与 Amazon Web Services Management Console不同,在使用 Amazon CLI 删除用户时,您必须手动删除附加到该用户的项目。此过程演示了这个流程。

从您的账户删除用户 (Amazon CLI)
  1. 请删除用户的密码(如果用户具有)。

    aws iam delete-login-profile

  2. 请删除用户的访问密钥(如果用户具有)。

    aws iam list-access-keys(用于列出用户的访问密钥)和 aws iam delete-access-key

  3. 请删除用户的签名证书。注意,当您删除安全凭证时,凭证永远消失,无法恢复。

    aws iam list-signing-certificates(用于列出用户的签名证书)和 aws iam delete-signing-certificate

  4. 请删除用户的 SSH 公有密钥(如果用户具有)。

    aws iam list-ssh-public-keys(用于列出用户的 SSH 公有密钥)和 aws iam delete-ssh-public-key

  5. 请删除用户的 Git 凭证。

    aws iam list-service-specific-credentials(用于列出用户的 Git 凭证)和 aws iam delete-service-specific-credential

  6. 停用用户的多重身份验证 (MFA) 设备(如果用户具有)。

    aws iam list-mfa-devices(用于列出用户的 MFA 设备)、aws iam deactivate-mfa-device(用于停用设备)和 aws iam delete-virtual-mfa-device(用于永久删除虚拟 MFA 设备)

  7. 请删除用户的内联策略。

    aws iam list-user-policies(用于列出用户的内联策略)和 aws iam delete-user-policy(用于删除策略)

  8. 分离附加到用户的任何托管策略。

    aws iam list-attached-user-policies(用于列出附加到用户的托管策略)和 aws iam detach-user-policy(用于分离策略)

  9. 请从任何用户组中删除用户。

    aws iam list-groups-for-user(用于列出用户所属的用户组)和 aws iam remove-user-from-group

  10. 请删除用户。

    aws iam delete-user

停用 IAM 用户

如果 IAM 用户暂时退出贵公司,您可能需要将其停用。您可以保留其 IAM 用户凭证,但仍然阻止其进行 Amazon 访问。

要停用用户,请创建并附加策略以拒绝该用户访问 Amazon。您可以稍后恢复该用户的访问权限。

以下是您可以附加到用户以拒绝其访问的拒绝策略的两个示例。

以下策略不包含时间限制。您必须删除该策略才能恢复用户的访问权限。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "*", "Resource": "*" } ] }

以下策略包含一个条件,即策略自 2024 年 12 月 24 日晚上 11:59(UTC)起生效,并于 2025 年 2 月 28 日晚上 11:59(UTC)终止。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "*", "Resource": "*", "Condition": { "DateGreaterThan": {"aws:CurrentTime": "2024-12-24T23:59:59Z"}, "DateLessThan": {"aws:CurrentTime": "2025-02-28T23:59:59Z"} } } ] }