本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon成本管理策略示例
本主题包含几个示例策略,您可以将它们附加到您的 IAM 用户或组以控制对您的账户的账单信息和工具的访问权限。以下基本规则适用于 Billing and Cost Management 的 IAM policy:
-
Version始终为2012-10-17。 -
Effect始终为Allow或Deny. -
Action是操作的名称或通配符 (*)。操作前缀为
budgets(用于 Amazon Budgets)、cur(用于 Amazon 成本和使用情况报告)、aws-portal(用于 Amazon 账单)或ce(用于 Cost Explorer)。 -
对于 Amazon Billing,
Resource始终为*。对于在
budget资源上执行的操作,请指定预算 Amazon 资源名称 (ARN)。 -
一个策略中可能包含多个语句。
有关账单控制台的策略示例列表,请参阅Billing 策略示例在计费用户指南.
这些策略要求您在 Account Settings(账户设置)
主题
- 拒绝 IAM 用户对 Billing and Cost Management 控制台的访问权限
- 拒绝成员账户访问 Amazon 控制台成本和使用小组件
- 拒绝特定 IAM 用户和角色访问 Amazon 控制台成本和使用小组件
- 允许完全访问 Amazon 服务,但拒绝 IAM 用户访问 Billing and Cost Management 控制台。
- 允许 IAM 用户查看 Billing and Cost Management 控制台(账户设置除外)
- 允许 IAM 用户修改账单信息
- 允许 IAM 用户创建预算
- 拒绝访问账户设置,但允许完全访问所有其他账单和使用情况信息
- 将报告存入 Amazon S3 存储桶
- 查看成本和使用情况
- 启用和禁用 Amazon 区域
- 查看和更新 Cost Explorer 首选项页面
- 使用 Cost Explorer 报告页面查看、创建、更新和删除
- 查看、创建、更新和删除预留和 Savings Plans 提醒
- 允许对 Amazon Cost Anomaly Detection 的只读访问
- 允许 Amazon Budgets 应用 IAM policy 和 SCP
- 允许 Amazon Budgets 应用 IAM policy 和 SCP 以及目标 EC2 和 RDS 实例
拒绝 IAM 用户对 Billing and Cost Management 控制台的访问权限
要显式拒绝 IAM 用户访问所有 Billing and Cost Management 控制台页面,请使用类似于此示例策略的策略。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "aws-portal:*", "Resource": "*" } ] }
拒绝成员账户访问 Amazon 控制台成本和使用小组件
要限制成员(关联)账户访问成本和使用数据,请使用管理(付款人)账户访问 Cost Explorer 首选项选项卡,然后取消选中 Linked Account Access(关联账户访问)。这将拒绝从 Cost Explorer (Amazon Cost Management) 控制台、Cost Explorer API 及 Amazon 控制台主页的成本和使用情况小组件中访问成本和使用情况数据,无论成员账户的 IAM 用户或角色是否具有 IAM 操作。
拒绝特定 IAM 用户和角色访问 Amazon 控制台成本和使用小组件
要拒绝特定 IAM 用户和角色的 Amazon 控制台成本和使用小组件,请使用下面的权限策略。
将此策略添加到 IAM 用户或角色,将会拒绝用户对 Cost Explorer (Amazon Cost Management) 控制台和 Cost Explorer API 的访问权限。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "ce:*", "Resource": "*" } ] }
允许完全访问 Amazon 服务,但拒绝 IAM 用户访问 Billing and Cost Management 控制台。
要拒绝 IAM 用户访问 Billing and Cost Management 控制台上的所有内容,请使用以下策略。在此情况下,您还应拒绝用户访问Amazon Identity and Access Management(IAM),以便用户无法访问控制对账单信息和工具的访问权限的策略。
该策略不允许进行任何操作。可将此策略与允许特定操作的其他策略结合使用。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "aws-portal:*", "iam:*" ], "Resource": "*" } ] }
允许 IAM 用户查看 Billing and Cost Management 控制台(账户设置除外)
此策略允许对所有 Billing and Cost Management 控制台进行只读访问,包括付款方式和报告控制台页面,但拒绝对账户设置页面,从而可会保护账户密码、联系信息和安全问题。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "aws-portal:View*", "Resource": "*" }, { "Effect": "Deny", "Action": "aws-portal:*Account", "Resource": "*" } ] }
允许 IAM 用户修改账单信息
要允许 IAM 用户在 Billing and Cost Management 控制台中修改账户账单信息,您还必须允许 IAM 用户查看您的账单信息。以下策略示例允许 IAM 用户修改 Consolidated Billing(整合账单)、Preferences(首选项)和 Credits(服务抵扣金额)控制台页面。它还允许 IAM 用户查看以下 Billing and Cost Management 控制台页面:
-
控制面板
-
Cost Explorer
-
账单
-
订单和发票
-
Advance Payment
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "aws-portal:*Billing", "Resource": "*" } ] }
允许 IAM 用户创建预算
要允许 IAM 用户在 Billing and Cost Management 控制台中创建预算,您还必须允许 IAM 用户查看您的账单信息、创建 CloudWatch 警报,并创建 Amazon SNS 通知。以下策略示例允许 IAM 用户修改 Budget(预算)控制台页面。
{ "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" ] } ] }
拒绝访问账户设置,但允许完全访问所有其他账单和使用情况信息
要保护您的账户密码、联系信息和安全问题,您可以拒绝 IAM 用户访问账户设置同时仍允许完全访问 Billing and Cost Management 控制台中的其余功能,如以下示例所示。
{ "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 存储桶
以下政策允许Billing and Cost Management 保存您的详细信息Amazon向 Amazon S3 存储桶收费,前提是您同时拥有 Amazon S3 存储桶和Amazon账户和Amazon S3 存储桶。请注意,此策略必须应用于 Amazon S3 存储桶而不是 IAAM 用户。也就是说,它是一种基于资源的策略,而不是基于用户的策略。您应拒绝 IAM 用户访问无需访问您的账单的 IAM 用户的存储桶。
将 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,请参阅Amazon:允许启用和禁用Amazon区域在IAM 用户指南.
查看和更新 Cost Explorer 首选项页面
此策略允许 IAM 用户使用 Cost Explorer 首选项页面查看和更新。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "aws-portal:ViewBilling", "ce:UpdatePreferences" ], "Resource": "*" } ] }
以下策略允许 IAM 用户查看 Cost Explorer,但拒绝查看或编辑 Preferences(首选项)页面的权限。
{ "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,但拒绝编辑 Preferences(首选项)页面的权限。
{ "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,但拒绝查看或编辑 Reports(报告)页面的权限。
{ "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,但拒绝编辑 Reports(报告)页面的权限。
{ "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 提醒。要编辑预留到期提醒或 Savings Plans 提醒,用户需要所有三个粒度的操作:ce:CreateNotificationSubscription、ce:UpdateNotificationSubscription 和 ce:DeleteNotificationSubscription。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "aws-portal:ViewBilling", "ce:CreateNotificationSubscription", "ce:UpdateNotificationSubscription", "ce:DeleteNotificationSubscription" ], "Resource": "*" } ] }
以下策略允许 IAM 用户查看 Cost Explorer,但拒绝查看或编辑预留到期提醒和 Savings Plans 提醒页面的权限。
{ "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,但拒绝编辑预留到期提醒和 Savings Plans 提醒页面的权限。
{ "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 Cost Anomaly Detection 的只读访问,请使用以下策略授予他们访问权限。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承担可代表您调用其他服务的角色的预算。有关此类跨服务权限最佳做法的更多信息,请参阅跨服务混淆代理问题防范.
{ "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": "*" } ] }