如何排查与账单和成本管理控制台相关的拒绝访问错误?

上次更新日期:2022 年 4 月 6 日

我希望向 AWS Identity and Access Management (IAM) 用户或组授予访问我的账户的账单信息所需的权限。但是,尽管执行了必要的操作,他们仍然遇到权限问题。我该如何解决此问题?

简短描述

如果根用户尚未向 IAM 实体(用户或角色)授予账单信息的访问权限,则 IAM 用户在访问 AWS 账单和成本管理控制台时可能会遇到权限问题。如果 IAM 实体没有支持其访问的相关 IAM 策略,也会发生这种情况。

解决方法

向 IAM 实体授予访问账单和成本管理控制台的权限

1.    在账单和成本管理控制台中激活账单信息的 IAM 用户和角色访问权限设置。如果您尚未启用此设置,则您的 IAM 用户和角色将无法访问账单和成本管理控制台,即使他们拥有管理员权限和所需的 IAM 策略。由于原定设置情况下此设置处于禁用状态,因此必须由根用户手动激活。有关激活此设置的更多信息,请参阅授予对账单信息和工具的访问权限

2.    确保您具有让 IAM 实体访问账单和成本管理控制台所需的权限。所需的最低权限如下:

  • aws-portal:ViewBilling — 需要此权限才能查看账单和成本管理控制台页面。
  • aws-portal:ModifyBilling — 需要此权限才能在账单和成本管理控制台页面中执行修改。

IAM 实体至少有一个附加 IAM 策略。关于账单和成本管理控制台策略,请参阅对 AWS Billing 使用基于身份的策略(IAM 策略)。也可以使用 AWS 托管策略,例如 AWSBillingReadOnlyAccess 或 Billing。

检查 IAM 实体是否未被拒绝访问账单和成本管理控制台

如果您遵循这些最佳实践,但仍然遇到 AccessDenied 问题,则可能附加了拒绝访问账单和成本管理控制台的策略。检查所有适用的策略(IAM 策略、权限边界、SCP),确保它们不会导致对账单和成本管理控制台访问的显式拒绝。

您还可以使用 IAM 策略模拟器来识别阻止访问账单和成本管理控制台的策略。

常见问题

  • IAM 实体上实施了限制访问特定区域的 SCP/IAM 策略。 账单服务是全球性的,在账单和成本管理控制台中执行的所有操作都记录在 us-east-1 区域。如果您的 IAM/SCP 策略拒绝您访问特定区域,请修改此策略以免除所需的特定账单权限。有关更多信息,请参阅 AWS:根据请求的区域拒绝对 AWS 的访问
  • 具有拒绝效力的 SCP/IAM 策略将强制执行,并且仅在 IAM 实体通过 MFA 身份验证时才允许访问服务 必须对您的 MFA 设备进行配置,以便始终使用 MFA 令牌对您进行身份验证,才能访问账单和成本管理控制台。
  • IAM 实体附加了不允许访问账单和成本管理控制台的权限边界 尽管有所需的 IAM 策略,但如果配置了阻止此权限的权限边界,您的 IAM 实体仍无法访问账单控制台。您的权限边界必须拥有对您需要的账单和成本管理控制台权限具允许效力的策略声明。

这篇文章对您有帮助吗?


您是否需要账单或技术支持?