移除或停用 IAM 用户
最佳实操建议您从 AWS 账户 中移除未使用的 IAM 用户。如果您想保留 IAM 用户的凭证以供将来使用,可以停用用户的访问权限,而不是从账户中删除凭证。有关更多信息,请参阅 停用 IAM 用户。
先决条件 – 查看 IAM 用户访问权限
在移除用户之前,请查看其最近的服务级活动。这有助于防止删除正在使用访问权限的主体(个人或应用程序)的访问权限。有关查看上次访问的信息的更多信息,请参阅 使用上次访问的信息优化 AWS 中的权限。
移除 IAM 用户(控制台)
使用 AWS Management Console 来移除 IAM 用户时,IAM 将自动删除以下关联信息:
-
IAM 用户标识符
-
任何群组成员资格 - 也就是说,该 IAM 用户将从其所属的任何 群组中移除
-
任何与该 IAM 用户关联的密码
-
属于该 IAM 用户的任何访问密钥
-
嵌入到该 IAM 用户中的所有内联策略(通过用户组权限应用于用户的策略不受影响)
注意
当您删除用户时,IAM 会移除附加到 IAM 用户的任何托管策略,但不会删除托管策略。
-
任何关联的 MFA 设备
要移除 IAM 用户(控制台)
移除 IAM 用户 (AWS CLI)
与 AWS Management Console 不同,在使用 AWS CLI 移除 IAM 用户时,您必须手动删除附加到该 IAM 用户的项目。此步骤演示了该过程。
从您的 AWS 账户 (AWS CLI) 中移除 IAM 用户
-
删除用户的密码(如果用户有)。
-
删除用户的访问密钥(如果用户有)。
aws iam list-access-keys
(用于列出用户的访问密钥)和aws iam delete-access-key
-
删除用户的签名证书。注意,当您删除安全凭证时,凭证永远消失,无法恢复。
aws iam list-signing-certificates
(用于列出用户的签名证书)和aws iam delete-signing-certificate
-
请删除用户的 SSH 公有密钥(如果用户具有)。
aws iam list-ssh-public-keys
(用于列出用户的 SSH 公有密钥)和aws iam delete-ssh-public-key
-
请删除用户的 Git 凭证。
aws iam list-service-specific-credentials
(用于列出用户的 Git 凭证)和aws iam delete-service-specific-credential
-
停用用户的多重身份验证 (MFA) 设备(如果用户具有)。
aws iam list-mfa-devices
(用于列出用户的 MFA 设备)、aws iam deactivate-mfa-device
(用于停用设备)和aws iam delete-virtual-mfa-device
(用于永久删除虚拟 MFA 设备) -
请删除用户的内联策略。
aws iam list-user-policies
(用于列出用户的内联策略)和aws iam delete-user-policy
(用于删除策略) -
分离附加到用户的任何托管策略。
aws iam list-attached-user-policies
(用于列出附加到用户的托管策略)和aws iam detach-user-policy
(用于分离策略) -
从任何 IAM 组中删除用户。
aws iam list-groups-for-user
(用于列出用户所属的 IAM 组)和aws iam remove-user-from-group
-
删除用户。
停用 IAM 用户
如果 IAM 用户暂时退出贵公司,您可能需要将其停用。您可以保留其 IAM 用户凭证,但仍然阻止其进行 AWS 访问。
要停用用户,请创建并附加策略以拒绝该用户访问 AWS。您可以稍后恢复该用户的访问权限。
以下是您可以附加到用户以拒绝其访问的拒绝策略的两个示例。
以下策略不包含时间限制。您必须删除该策略才能恢复用户的访问权限。
{ "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"} } } ] }