AWS Identity and Access Management
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

使用上次访问的服务相关数据减少权限

您可以查看有关 IAM 实体(用户或角色)上次尝试访问服务的报告。这称为上次访问的服务相关数据。之后,您可以使用此信息优化策略以仅允许访问实体使用的服务。您可以在 IAM 中为每种类型的资源生成一个报告。在每种情况下,报告都涵盖给定报告期间允许的服务:

  • 用户 – 查看用户上次尝试访问服务的时间。

  • – 查看有关组成员上次尝试访问服务的信息。此报告还包括已尝试访问的成员的总数。

  • 角色 – 查看人员上次在尝试访问服务时使用该角色的时间。

  • 策略 – 查看有关用户或角色上次尝试访问服务的信息。此报告还包括已尝试访问的实体的总数。

您可以使用上次访问的服务相关数据来识别关联策略中未使用和最近未使用的权限。然后,您可以选择删除未使用的服务的权限,或将具有类似的使用模式的用户重新组织到一个组中。这有助于提高账户安全性。了解实体上次是否使用了权限及使用时间可帮助您删除不必要的权限并轻松缩紧 IAM 策略。

要了解如何使用 AWS 管理控制台、AWS CLI 或 AWS API 查看上次访问的服务相关数据,请参阅查看服务上次访问数据

有关使用上次访问的服务相关数据做出有关向 IAM 实体授予的权限的决策的示例应用场景,请参阅有关使用访问数据的示例应用场景

需知信息

在使用报告中的上次访问的服务相关数据更改实体的权限之前,请查看有关数据的以下详细信息。

  • 报告有效期间 – 近期活动通常指 4 小时内的活动。IAM 报告过去 365 天或更短时间(如果您的区域去年开始支持此功能)内的活动。有关更多信息,请参阅跟踪数据的区域

  • 经过身份验证的实体 – 您的报告仅包含您账户中经过身份验证的实体(用户或角色)的数据。该报告不包含有关未经身份验证的尝试的数据。它也不包括通过其他账户进行的尝试的数据

  • 策略类型 – 您的报告仅包含实体的策略允许的服务的数据。这些是附加到角色或直接或通过组附加到用户的策略。其他策略类型允许的访问权限未包含在您的报告中。排除的策略类型包含基于资源的策略、访问控制列表、AWS Organizations 策略、IAM 权限边界和会话策略。要了解如何评估不同的策略类型以允许或拒绝访问,请参阅策略评估逻辑

所需权限

要使用 AWS 管理控制台查看上次访问的服务相关数据,您必须具有包含以下操作的策略:

  • iam:GenerateServiceLastAccessedDetails

  • iam:Get*

  • iam:List*

注意

这些权限允许用户查看以下内容:

  • 哪些用户、组或角色将附加到托管策略

  • 用户或角色可访问哪些服务

  • 他们上次访问服务的时间

要使用 AWS CLI 或 AWSAPI 查看上次访问的服务相关数据,您还必须具有与要使用的操作匹配的权限:

  • iam:GenerateServiceLastAccessedDetails

  • iam:GetServiceLastAccessedDetails

  • iam:GetServiceLastAccessedDetailsWithEntities

  • iam:ListPoliciesGrantingServiceAccess

此示例显示您可以如何创建策略 允许查看上次访问的服务相关数据并对所有 IAM 进行只读访问。此策略还授予在控制台上完成此操作的必要权限。

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "iam:GenerateServiceLastAccessedDetails", "iam:Get*", "iam:List*" ], "Resource": "*" }

实体活动问题排查

如果 AWS 管理控制台 上次访问的服务相关数据表为空,或您的 AWS CLI 或 AWS API 请求返回空数据集或空字段,请查看以下示例:

  • 对于用户,请确保用户至少直接或通过组成员资格附加了一个内联策略或托管策略。

  • 对于组,请验证组是否至少附加了一个内联策略或托管策略。

  • 对于组,报告仅返回使用组策略访问服务的成员的上次访问的服务相关数据。要了解成员是否使用了其他策略,请查看该用户的上次访问的服务相关数据。

  • 对于角色,请验证角色是否至少附加了一个内联策略或托管策略。

  • 对于实体(用户或角色),请查看可能影响该实体的权限的其他策略类型。其中包含基于资源的策略、访问控制列表、AWS Organizations 策略、IAM 权限边界或会话策略。有关更多信息,请参阅 策略类型评估单个账户中的策略

  • 对于策略,请确保将指定的托管策略附加到至少一个用户、具有成员的组或角色。

进行更改时,请等待至少 4 小时,以使活动能够显示在报告中。如果您使用 AWS CLI 或 AWS API,则必须生成新的报告以查看更新后的数据。

跟踪数据的区域

AWS 在大多数区域中收集服务上次访问的数据。数据最多存储 365 天。在 AWS 添加其他区域时,这些区域将添加到下表中,包括 AWS; 开始跟踪每个区域中的数据的日期:

区域名称 区域 跟踪开始日期
美国东部(俄亥俄州) us-east-2 2017 年 10 月 27 日
美国东部(弗吉尼亚北部) us-east-1 2015 年 10 月 1 日
美国西部(加利福尼亚北部) us-west-1 2015 年 10 月 1 日
美国西部(俄勒冈) us-west-2 2015 年 10 月 1 日
亚太区域(东京) ap-northeast-1 2015 年 10 月 1 日
亚太区域(首尔) ap-northeast-2 2016 年 1 月 6 日
亚太区域(新加坡) ap-southeast-1 2015 年 10 月 1 日
亚太区域(悉尼) ap-southeast-2 2015 年 10 月 1 日
亚太地区(孟买) ap-south-1 2016 年 6 月 27 日
加拿大 (中部) ca-central-1 2017 年 10 月 28 日
欧洲(法兰克福) eu-central-1 2015 年 10 月 1 日
欧洲(爱尔兰) eu-west-1 2015 年 10 月 1 日
欧洲 (伦敦) eu-west-2 2017 年 10 月 28 日
欧洲 (巴黎) eu-west-3 2017 年 12 月 18 日
南美洲(圣保罗) sa-east-1 2015 年 12 月 11 日

如果某个区域未在上表中列出,则表明此区域尚不提供上次访问的服务相关数据。