选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

检查 IAM policy

聚焦模式
检查 IAM policy - AWS Key Management Service

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

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

除密钥策略和授权外,您还可以使用 IAM policy 来允许对 KMS 密钥的访问。有关 IAM policy 和密钥策略如何协同工作的更多信息,请参阅 AWS KMS 权限疑难解答

要确定当前可通过 IAM policy 访问 KMS 密钥的委托人,可以使用基于浏览器的 IAM policy simulator 工具,也可以向 IAM API 发出请求。

使用 IAM policy simulator 检查 IAM policy

IAM policy simulator 有助于您了解哪些委托人可以通过 IAM policy 访问 KMS 密钥。

使用 IAM policy simulator 确定对 KMS 密钥的访问权限
  1. 登录 AWS Management Console 并打开 IAM 策略模拟器,网址为https://policysim.aws.amazon.com/

  2. 用户、组和角色窗格中,选择您要模拟其策略的用户、组或角色。

  3. (可选) 清除您要从模拟中忽略的任何策略旁边的复选框。要模拟所有策略,则将所有策略保持选中状态。

  4. 策略模拟器窗格中,执行以下操作:

    1. 对于选择服务,请选择 Key Management Service

    2. 要模拟特定 AWS KMS 动作,请在 “选择动作” 中选择要模拟的动作。要模拟所有 AWS KMS 动作,请选择 “全选”

  5. (可选)默认情况下,策略模拟器会模拟对所有 KMS 密钥的访问。要模拟对特定 KMS 密钥的访问,请选择 Simulation Settings(模拟设置),然后键入要模拟的 KMS 密钥的 Amazon Resource Name (ARN)。

  6. 选择 Run Simulation (运行模拟)

您可以在结果部分查看模拟的结果。对 AWS 账户中的每个用户、组和角色重复第 2 至 6 步。

使用 IAM API 检查 IAM policy

您可以使用 IAM API 以编程方式检查 IAM policy。以下步骤提供了如何执行该操作的一般概述:

  1. 对于密钥策略中 AWS 账户 列为委托人的每个用户(即按以下格式指定的每个AWS 账户委托人"Principal": {"AWS": "arn:aws:iam::111122223333:root"}),使用 IAM API 中的ListUsersListRoles操作获取账户中的所有用户和角色。

  2. 对于列表中的每个用户和角色,使用 IAM API 中的SimulatePrincipalPolicy操作,传入以下参数:

    • 对于 PolicySourceArn,指定列表中用户或角色的 Amazon Resource Name (ARN)。您只能为每个 SimulatePrincipalPolicy 请求指定一个 PolicySourceArn,因此必须多次调用此操作,针对列表中的每个用户和角色分别调用一次。

    • ActionNames列表中,指定要模拟的每 AWS KMS 个 API 操作。要模拟所有 AWS KMS API 操作,请使用kms:*。要测试各个 AWS KMS API 操作,请在每个 API 操作之前加上 kms: “”,例如 “kms:ListKeys”。有关 AWS KMS API 操作的完整列表,请参阅《AWS Key Management Service API 参考》中的 操作

    • (可选)要确定用户或角色是否有权访问特定 KMS 密钥,请使用ResourceArns参数指定 KMS 密钥的 Amazon 资源名称 (ARNs) 列表。要确定用户或角色是否有权访问任何 KMS 密钥,请忽略 ResourceArns 参数。

IAM 通过以下评估决策来响应每个 SimulatePrincipalPolicy 请求:allowedexplicitDenyimplicitDeny。对于包含评估决定的每个响应allowed,该响应都包含允许的特定 AWS KMS API 操作的名称。它还包括评估中使用的 KMS 密钥的 ARN(如果有)。

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。