查看 IAM 的上次访问信息 - AWS Identity and Access Management

查看 IAM 的上次访问信息

您可以使用 AWS Management Console、AWS CLI 或 AWS API 查看 IAM 的上次访问信息。上次访问信息包括有关 Amazon EC2、IAM、Lambda 和 Amazon S3 上次访问的某些操作的信息。有关上次访问信息的更多信息,请参阅使用上次访问的信息优化 AWS 中的权限

您可以在 IAM 中查看每种类型的资源的信息。在每种情况下,该信息包括给定报告周期允许的服务:

  • User(用户)- 查看有关用户上次尝试访问每个允许的服务的信息。

  • User group(用户组)- 查看有关用户组成员上次尝试访问每个允许的服务的信息。此报告还包括已尝试访问的成员的总数。

  • Role(角色)- 查看有关某个人上次使用角色尝试访问每个允许的服务的信息。

  • Policy(策略)- 查看有关用户或角色上次尝试访问每个允许的服务的信息。此报告还包括已尝试访问的实体的总数。

注意

在 IAM 中查看资源的访问信息之前,请确保您了解信息的报告周期、报告的实体和已评估的策略类型。有关更多信息,请参阅 关于上次访问的信息的知识

查看 IAM(控制台)的信息

您可以在 IAM 控制台的 Access Advisor(访问顾问)选项卡上查看 IAM 的上次访问信息。

查看 IAM(控制台)的信息

  1. 登录AWS Management Console,然后通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择 Groups(组)、Users(用户)、Roles(角色)或 Policies(策略)。

  3. 请选择任意用户、用户组、角色或策略名称以打开其 Summary(摘要)页面并选择 Access Advisor(访问顾问)选项卡。根据您选择的资源查看以下信息:

    • User group(用户组)- 查看用户组成员(用户)可以访问的服务列表。您还可以查看成员上次访问服务的时间、成员使用的用户组策略以及发出请求的用户组成员。请选择策略的名称以了解它是托管策略还是内联用户组策略。请选择用户组成员的名称以查看该用户组的所有成员以及他们上次访问服务的时间。

    • User(用户)- 查看用户可以访问的服务列表。您还可以查看他们上次访问服务的时间以及他们使用的策略。请选择策略的名称以了解它是托管策略、内联用户策略还是用户组的内联策略。

    • Role(角色)- 查看角色可以访问的服务的列表、角色上次访问服务的时间以及所使用的策略。选择策略的名称以了解它是托管策略还是内联角色策略。

    • Policy(策略)- 查看策略中允许的操作的服务列表。还可以查看上次使用策略访问服务的时间以及使用该策略的实体(用户或角色)。选择实体的名称以了解哪些实体已附加此策略以及实体上次访问服务的时间。

  4. (可选)在表的 Service(服务)列中,选择 Amazon EC2AWS Identity and Access ManagementAWS LambdaAmazon S3 以查看 IAM 实体尝试访问的管理操作的列表。您可以查看 AWS 区域以及显示某人上次尝试执行操作的时间戳。

  5. Last accessed(上次访问)列显示服务以及 Amazon EC2、IAM、Lambda 和 Amazon S3 管理操作。查看此列中返回的以下可能结果。这些结果会有所不同,具体取决于是否允许某个服务或操作、是否访问了此服务或操作,以及 AWS 是否跟踪此服务或操作以获取上次访问的信息。

    <number of> 天前

    自跟踪周期内使用服务或操作以来的天数。服务的跟踪周期为过去 400 天。Amazon S3 操作的跟踪周期从 2020 年 4 月 12 日开始。Amazon EC2、IAM Lambda 和操作的跟踪周期从 2021 年 4 月 7 日开始。要了解有关每个 AWS 区域的跟踪开始日期的更多信息,请参阅AWS 跟踪上次访问信息的位置

    在跟踪周期间未访问

    所跟踪的服务或操作在跟踪周期内未被实体使用。

    您可能对未出现在列表中的操作拥有权限。如果操作的跟踪信息当前不受 AWS 支持,则可能会发生这种情况。您不应仅出于缺少跟踪信息来做出权限决定。相反,我们建议您使用此信息来告知和支持授予最小权限的总体策略。检查您的策略以确认访问级别是否适当。

查看 IAM 的信息 (AWS CLI)

您可以使用 AWS CLI 检索有关上次使用 IAM 资源尝试访问 AWS 服务和 Amazon S3、Amazon EC2、IAM 以及 Lambda 操作的信息。IAM 资源可能是用户、用户组、角色或策略。

查看 IAM 的信息 (AWS CLII)

  1. 生成报告。请求必须包括要报告的 IAM 资源(用户、用户组、角色或策略)的 ARN。您可以指定要在报告中生成的粒度级别,以查看服务或服务和操作的访问详细信息。该请求返回一个 job-id,您之后可在 get-service-last-accessed-detailsget-service-last-accessed-details-with-entities 操作中使用它来监控 job-status,直到作业完成。

  2. 检索有关使用上一步中的 job-id 参数的报告的详细信息。

    此操作根据您在 generate-service-last-accessed-details 操作中请求的资源类型和粒度级别返回以下信息:

    • User(用户)- 返回指定用户可访问的服务的列表。对于每个服务,此操作返回用户上次尝试的日期和时间以及用户的 ARN。

    • 用户组 — 返回指定用户组的成员可使用附加到用户组的策略访问的服务列表。对于每个服务,此操作返回任何用户组成员(用户)上次尝试的日期和时间。它还返回该用户的 ARN 以及已尝试访问服务的用户组成员的总数。使用 GetServiceLastAccessedDetailsWithEntities 操作可检索所有成员的列表。

    • Role(角色)- 返回指定角色可访问的服务的列表。对于每个服务,此操作返回角色上次尝试的日期和时间以及角色的 ARN。

    • Policy(策略)- 返回指定策略允许访问的服务的列表。对于每个服务,此操作返回实体(用户或角色)上次尝试使用策略访问服务的日期和时间。它还返回实体的 ARN 以及已尝试访问的实体的总数。

  3. 了解有关在尝试访问特定服务时使用用户组或策略权限的实体的更多信息。此操作返回具有每个实体的 ARN、ID、名称、路径、类型(用户或角色)的实体列表以及实体上次尝试访问服务的时间。您还可以对用户和角色使用此操作,但它仅返回有关该实体的信息。

  4. 了解有关在尝试访问特定服务时身份(用户、用户组或角色)使用的基于身份的策略的更多信息。在指定身份和服务时,此操作返回身份可用于访问指定服务的权限策略的列表。此操作提供策略的当前状态,而不依赖于生成的报告。它也不返回其他策略类型,例如基于资源的策略、访问控制列表、AWS Organizations 策略、IAM 权限边界或会话策略。有关更多信息,请参阅 策略类型评估单个账户中的策略

查看 IAM 的信息 (AWS API)

您可以使用 AWS API 检索有关上次使用 IAM 资源尝试访问 AWS 服务和 Amazon S3、Amazon EC2、IAM 以及 Lambda 操作的信息。IAM 资源可能是用户、用户组、角色或策略。您可以指定要在报告中生成的粒度级别,以查看服务或服务和操作的详细信息。

查看 IAM 的信息 (AWS API)

  1. 生成报告。请求必须包括要报告的 IAM 资源(用户、用户组、角色或策略)的 ARN。它返回一个 JobId,您之后可在 GetServiceLastAccessedDetailsGetServiceLastAccessedDetailsWithEntities 操作中使用它来监控 JobStatus,直到作业完成。

  2. 检索有关使用上一步中的 JobId 参数的报告的详细信息。

    此操作根据您在 GenerateServiceLastAccessedDetails 操作中请求的资源类型和粒度级别返回以下信息:

    • User(用户)- 返回指定用户可访问的服务的列表。对于每个服务,此操作返回用户上次尝试的日期和时间以及用户的 ARN。

    • 用户组 — 返回指定用户组的成员可使用附加到用户组的策略访问的服务列表。对于每个服务,此操作返回任何用户组成员(用户)上次尝试的日期和时间。它还返回该用户的 ARN 以及已尝试访问服务的用户组成员的总数。使用 GetServiceLastAccessedDetailsWithEntities 操作可检索所有成员的列表。

    • Role(角色)- 返回指定角色可访问的服务的列表。对于每个服务,此操作返回角色上次尝试的日期和时间以及角色的 ARN。

    • Policy(策略)- 返回指定策略允许访问的服务的列表。对于每个服务,此操作返回实体(用户或角色)上次尝试使用策略访问服务的日期和时间。它还返回实体的 ARN 以及已尝试访问的实体的总数。

  3. 了解有关在尝试访问特定服务时使用用户组或策略权限的实体的更多信息。此操作返回具有每个实体的 ARN、ID、名称、路径、类型(用户或角色)的实体列表以及实体上次尝试访问服务的时间。您还可以对用户和角色使用此操作,但它仅返回有关该实体的信息。

  4. 了解有关在尝试访问特定服务时身份(用户、用户组或角色)使用的基于身份的策略的更多信息。在指定身份和服务时,此操作返回身份可用于访问指定服务的权限策略的列表。此操作提供策略的当前状态,而不依赖于生成的报告。它也不返回其他策略类型,例如基于资源的策略、访问控制列表、AWS Organizations 策略、IAM 权限边界或会话策略。有关更多信息,请参阅 策略类型评估单个账户中的策略