Amazon 成本管理策略示例 - Amazon Cost Management
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

Amazon 成本管理策略示例

注意

以下 Amazon Identity and Access Management(IAM)操作已终止标准支持:

  • aws-portal 命名空间

  • purchase-orders:ViewPurchaseOrders

  • purchase-orders:ModifyPurchaseOrders

如果您尚未将旧的 IAM 操作迁移到新的精细操作,则必须在 2024 年 3 月之前完成迁移。

如果您使用的是 Amazon Organizations,则可以使用批量策略迁移程序脚本从付款人账户更新策略。您还可以使用旧到精细操作映射参考来验证需要添加的 IAM 操作。

有关更多信息,请参阅 Changes to Amazon Billing, Amazon Cost Management, and Account Consoles Permission 博客文章。

如果您的 Amazon Web Services 账户是在 2023 年 11 月 16 日上午 11:00(太平洋夏令时)或之后创建的,或者您是在该日期或之后创建的 Amazon Organizations 的成员,则精细操作已经在您的组织内生效。

本主题包含几个示例策略,您可以将它们附加到您的 IAM 角色或组以控制对您的账户的账单信息和工具的访问权限。以下基本规则适用于账单和成本管理的 IAM policy:

  • Version 始终为 2012-10-17

  • Effect 始终为 AllowDeny

  • Action 是操作的名称或通配符 (*)。

    操作前缀为 budgets(用于 Amazon Budgets)、cur(用于 Amazon 成本和使用情况报告)、aws-portal(用于 Amazon 账单)或 ce(用于 Cost Explorer)。

  • 对于 Amazon Billing,Resource 始终为 *

    对于在 budget 资源上执行的操作,请指定预算 Amazon 资源名称 (ARN)。

  • 一个策略中可能包含多个语句。

有关账单控制台的策略示例列表,请参阅账单用户指南中的账单政策示例

注意

这些策略要求您在 账户设置控制台页面上激活 IAM 用户对账单和成本管理控制台的访问权限。有关更多信息,请参见 激活对 Billing and Cost Management 控制台的访问权限

拒绝 IAM 用户对账单和成本管理控制台的访问权限

要显式拒绝 IAM 用户访问所有账单和成本管理控制台页面,请使用类似于此示例策略的策略。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "aws-portal:*", "Resource": "*" } ] }

拒绝成员账户访问 Amazon 控制台成本和使用小组件

要限制成员(关联)账户访问成本和使用数据,请使用管理(付款人)账户访问 Cost Explorer 首选项选项卡,然后取消选中 Linked Account Access(关联账户访问)。这将拒绝从 Cost Explorer (Amazon 成本管理) 控制台、Cost Explorer API 及 Amazon 控制台主页的成本和使用情况小组件中访问成本和使用情况数据,无论成员账户的 IAM 用户或角色是否具有 IAM 操作。

拒绝特定 IAM 用户和角色访问 Amazon 控制台成本和使用小组件

要拒绝特定 IAM 用户和角色的 Amazon 控制台成本和使用小组件,请使用下面的权限策略。

注意

将此策略添加到 IAM 用户或角色,将会拒绝用户对 Cost Explorer (Amazon 成本管理) 控制台和 Cost Explorer API 的访问权限。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "ce:*", "Resource": "*" } ] }

允许完全访问 Amazon 服务,但拒绝 IAM 用户访问账单和成本管理控制台。

要拒绝 IAM 用户访问账单和成本管理控制台上的所有内容,请使用以下策略。在这种情况下,您还应拒绝用户访问Amazon Identity and Access Management (IAM) ,这样,用户就无法访问控制对账单信息和工具的访问权限的策略。

重要

该策略不允许进行任何操作。可将此策略与允许特定操作的其他策略结合使用。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "aws-portal:*", "iam:*" ], "Resource": "*" } ] }

允许 IAM 用户查看账单和成本管理控制台(账户设置除外)

此策略允许对所有控制台进行只读访问,包括付款方式报告控制台页面,但拒绝访问账户设置页面,从而保护账户密码、联系信息和安全问题。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "aws-portal:View*", "Resource": "*" }, { "Effect": "Deny", "Action": "aws-portal:*Account", "Resource": "*" } ] }

允许 IAM 用户修改账单信息

要允许 IAM 用户在账单和成本管理控制台中修改账户账单信息,请允许 IAM 用户查看您的账单信息。以下策略示例允许 IAM 用户修改 整合账单首选项服务抵扣金额控制台页面。它还允许 IAM 用户查看以下账单和成本管理控制台页面:

  • 控制面板

  • Cost Explorer

  • 账单

  • 订单和发票

  • Advance Payment

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "aws-portal:*Billing", "Resource": "*" } ] }

允许用户创建预算

要允许用户在账单和成本管理控制台中创建预算,您还必须允许用户查看您的账单信息、创建 CloudWatch 警报和创建 Amazon SNS 通知。以下策略示例允许用户修改预算控制台页面。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1435216493000", "Effect": "Allow", "Action": [ "aws-portal:ViewBilling", "aws-portal:ModifyBilling", "budgets:ViewBudget", "budgets:ModifyBudget" ], "Resource": [ "*" ] }, { "Sid": "Stmt1435216514000", "Effect": "Allow", "Action": [ "cloudwatch:*" ], "Resource": [ "*" ] }, { "Sid": "Stmt1435216552000", "Effect": "Allow", "Action": [ "sns:*" ], "Resource": [ "arn:aws:sns:us-east-1::" ] } ] }

拒绝访问账户设置,但允许完全访问所有其他账单和使用情况信息

要保护您的账户密码、联系信息和安全问题,您可以拒绝用户访问账户设置,同时仍允许完全访问控制台中的其余功能,如以下示例所示。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "aws-portal:*Billing", "aws-portal:*Usage", "aws-portal:*PaymentMethods" ], "Resource": "*" }, { "Effect": "Deny", "Action": "aws-portal:*Account", "Resource": "*" } ] }

将报告存入 Amazon S3 存储桶

以下策略允许账单和成本管理将您的详细 Amazon 账单保存到 Amazon S3 存储桶,只要您同时拥有 Amazon 账户和 Amazon S3 存储桶。请注意,此策略必须应用于 Amazon S3 存储桶而不是某个用户。也就是说,它是一种基于资源的策略,而不是基于用户的策略。您应拒绝 用户访问无需访问您的账单的 用户的存储桶。

bucketname 替换为您的存储桶的名称。

有关更多信息,请参阅 Amazon Simple Storage Service 用户指南中的使用存储桶策略和用户策略

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "billingreports.amazonaws.com" }, "Action": [ "s3:GetBucketAcl", "s3:GetBucketPolicy" ], "Resource": "arn:aws:s3:::bucketname" }, { "Effect": "Allow", "Principal": { "Service": "billingreports.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::bucketname/*" } ] }

查看成本和使用情况

要允许 IAM 用户使用 Amazon Cost Explorer API,请使用以下策略授予他们访问权限。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ce:*" ], "Resource": [ "*" ] } ] }

启用和禁用 Amazon 区域

有关允许用户启用和禁用区域的示例 IAM policy,请参阅 IAM 用户指南中的 Amazon:允许启用和禁用 Amazon 区域

查看和更新 Cost Explorer 首选项页面

此策略允许 IAM 用户使用 Cost Explorer 首选项页面查看和更新。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "aws-portal:ViewBilling", "ce:UpdatePreferences" ], "Resource": "*" } ] }

以下策略允许 IAM 用户查看 Cost Explorer,但拒绝查看或编辑 首选项页面的权限。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "aws-portal:ViewBilling" ], "Resource": "*" }, { "Sid": "VisualEditor1", "Effect": "Deny", "Action": [ "ce:GetPreferences", "ce:UpdatePreferences" ], "Resource": "*" } ] }

以下策略允许 IAM 用户查看 Cost Explorer,但拒绝编辑 首选项页面的权限。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "aws-portal:ViewBilling" ], "Resource": "*" }, { "Sid": "VisualEditor1", "Effect": "Deny", "Action": [ "ce:UpdatePreferences" ], "Resource": "*" } ] }

使用 Cost Explorer 报告页面查看、创建、更新和删除

此策略允许 IAM 用户使用 Cost Explorer 报告页面查看、创建、更新和删除。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "aws-portal:ViewBilling", "ce:CreateReport", "ce:UpdateReport", "ce:DeleteReport" ], "Resource": "*" } ] }

以下策略允许 IAM 用户查看 Cost Explorer,但拒绝查看或编辑 报告页面的权限。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "aws-portal:ViewBilling" ], "Resource": "*" }, { "Sid": "VisualEditor1", "Effect": "Deny", "Action": [ "ce:DescribeReport", "ce:CreateReport", "ce:UpdateReport", "ce:DeleteReport" ], "Resource": "*" } ] }

以下策略允许 IAM 用户查看 Cost Explorer,但拒绝编辑 报告页面的权限。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "aws-portal:ViewBilling" ], "Resource": "*" }, { "Sid": "VisualEditor1", "Effect": "Deny", "Action": "ce:CreateReport", "ce:UpdateReport", "ce:DeleteReport" ], "Resource": "*" } ] }

查看、创建、更新和删除预留和 Savings Plans 提醒

此策略允许 IAM 用户查看、创建、更新和删除预留到期提醒节省计划提醒。要编辑预留到期提醒或 Savings Plans 提醒,用户需要所有三个粒度的操作:ce:CreateNotificationSubscriptionce:UpdateNotificationSubscriptionce:DeleteNotificationSubscription

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "aws-portal:ViewBilling", "ce:CreateNotificationSubscription", "ce:UpdateNotificationSubscription", "ce:DeleteNotificationSubscription" ], "Resource": "*" } ] }

以下策略允许 IAM 用户查看 Cost Explorer,但拒绝查看或编辑预留到期提醒节省计划提醒页面的权限。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "aws-portal:ViewBilling" ], "Resource": "*" }, { "Sid": "VisualEditor1", "Effect": "Deny", "Action": [ "ce:DescribeNotificationSubscription", "ce:CreateNotificationSubscription", "ce:UpdateNotificationSubscription", "ce:DeleteNotificationSubscription" ], "Resource": "*" } ] }

以下策略允许 IAM 用户查看 Cost Explorer,但拒绝编辑预留到期提醒节省计划提醒页面的权限。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "aws-portal:ViewBilling" ], "Resource": "*" }, { "Sid": "VisualEditor1", "Effect": "Deny", "Action": [ "ce:CreateNotificationSubscription", "ce:UpdateNotificationSubscription", "ce:DeleteNotificationSubscription" ], "Resource": "*" } ] }

允许对 Amazon Cost Anomaly Detection 的只读访问

要允许 IAM 用户对 Amazon 成本异常情况检测的只读访问,请使用以下策略授予他们访问权限。ce:ProvideAnomalyFeedback 作为只读访问的一部分是可选的。

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

允许 Amazon Budgets 应用 IAM policy 和 SCP

此策略允许 Amazon Budgets 代表用户应用 IAM policy 和服务控制策略 (SCP)。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:AttachGroupPolicy", "iam:AttachRolePolicy", "iam:AttachUserPolicy", "iam:DetachGroupPolicy", "iam:DetachRolePolicy", "iam:DetachUserPolicy", "organizations:AttachPolicy", "organizations:DetachPolicy" ], "Resource": "*" } ] }

允许 Amazon Budgets 应用 IAM policy 和 SCP 以及目标 EC2 和 RDS 实例

此策略允许 Amazon Budgets 代表用户应用 IAM policy 和服务控制策略 (SCP) 以及目标 Amazon EC2 和 Amazon RDS 实例。

信任策略

注意

此信任策略允许 Amazon Budgets 担任可以代表您调用其他服务的角色。有关此类跨服务权限最佳实践的更多信息,请参阅防止跨服务混淆座席

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "budgets.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:budgets::123456789012:budget/*" }, "StringEquals": { "aws:SourceAccount": "123456789012" } } } ] }

权限策略

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeInstanceStatus", "ec2:StartInstances", "ec2:StopInstances", "iam:AttachGroupPolicy", "iam:AttachRolePolicy", "iam:AttachUserPolicy", "iam:DetachGroupPolicy", "iam:DetachRolePolicy", "iam:DetachUserPolicy", "organizations:AttachPolicy", "organizations:DetachPolicy", "rds:DescribeDBInstances", "rds:StartDBInstance", "rds:StopDBInstance", "ssm:StartAutomationExecution" ], "Resource": "*" } ] }