AWS Billing Conductor 基于身份的策略示例 - AWS 计费指挥家

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

AWS Billing Conductor 基于身份的策略示例

默认情况下,IAM用户和角色无权创建或修改 Billing Conductor 资源。他们也无法使用 AWS Management Console AWS CLI、或执行任务 AWS API。IAM管理员必须创建IAM策略,授予用户和角色对其所需的指定资源执行特定API操作的权限。然后,管理员必须将这些策略附加到需要这些权限的IAM用户或群组。

要了解如何使用这些示例JSON策略文档创建IAM基于身份的策略,请参阅《IAM用户指南》JSON中的 “在选项卡上创建策略”。

策略最佳实践

基于身份的策略决定某人是否可以在您的账户中创建、访问或删除 Billing Conductor 资源。这些操作可能会使 AWS 账户产生成本。创建或编辑基于身份的策略时,请遵循以下指南和建议:

  • 开始使用 AWS 托管策略并转向最低权限权限 — 要开始向用户和工作负载授予权限,请使用为许多常见用例授予权限的AWS 托管策略。它们在你的版本中可用 AWS 账户。我们建议您通过定义针对您的用例的 AWS 客户托管策略来进一步减少权限。有关更多信息,请参阅《IAM用户指南》中的AWS 托AWS 管策略或工作职能托管策略。

  • 应用最低权限权限-使用IAM策略设置权限时,仅授予执行任务所需的权限。为此,您可以定义在特定条件下可以对特定资源执行的操作,也称为最低权限许可。有关使用应用权限IAM的更多信息,请参阅《IAM用户指南》IAM中的策略和权限

  • 使用IAM策略中的条件进一步限制访问权限-您可以在策略中添加条件以限制对操作和资源的访问权限。例如,您可以编写一个策略条件来指定所有请求都必须使用发送SSL。如果服务操作是通过特定的方式使用的,则也可以使用条件来授予对服务操作的访问权限 AWS 服务,例如 AWS CloudFormation。有关更多信息,请参阅《IAM用户指南》中的IAMJSON策略元素:条件

  • 使用 A IAM ccess Analyzer 验证您的IAM策略以确保权限的安全性和功能性 — A IAM ccess Analyzer 会验证新的和现有的策略,以便策略符合IAM策略语言 (JSON) 和IAM最佳实践。IAMAccess Analyzer 提供了 100 多项策略检查和可行的建议,可帮助您制定安全和实用的策略。有关更多信息,请参阅《IAM用户指南》中的 IAMAccess Analyzer 策略验证

  • 需要多重身份验证 (MFA)-如果您的场景需要IAM用户或 root 用户 AWS 账户,请打开MFA以提高安全性。要要求MFA何时调用API操作,请在策略中添加MFA条件。有关更多信息,请参阅《IAM用户指南》中的配置MFA受保护的API访问权限

有关中最佳做法的更多信息IAM,请参阅《IAM用户指南》IAM中的安全最佳实践

Billing Conductor 基于身份策略示例

本主题包含示例策略,您可以将这些策略附加到您的IAM用户或群组,以控制对账户信息和工具的访问权限。

授予对 Billing Condoctor 控制台的完全访问权限

要访问 Billing Conductor 控制台,您必须拥有一组最低权限。这些权限必须允许您列出和查看有关您的 AWS 账户中的 Billing Conductor 资源的详细信息。如果您创建的基于身份的策略比所需的最低权限更严格,则控制台将无法按预期运行,适用于使用该策略的实体(IAM用户或角色)。

为确保这些实体仍然可以使用 Billing Conductor 控制台,还需要将以下 AWS 托管策略附加到这些实体。有关更多信息,请参阅《用户指南》中的向IAM用户添加权限

billingconductor:* 权限外,创建定价规则需要 pricing:DescribeServices,并且列出与付款人账户关联的关联账户需要 organizations:ListAccounts

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "billingconductor:*", "Resource": "*" }, { "Effect": "Allow", "Action": [ "organizations:ListAccounts", "organizations:DescribeAccount" ], "Resource": "*" }, { "Effect": "Allow", "Action": "pricing:DescribeServices", "Resource": "*" } ] }

您无需为仅拨打 AWS CLI 或的用户设置最低控制台权限 AWS API。相反,只允许访问与你正在尝试执行的API操作相匹配的操作。

授予计费指挥员的完全访问权限 API

在此示例中,您授予IAM实体对账单指挥的完全访问权限API。

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

授予对 Billing Condoctor 控制台的只读访问权限

在此示例中,您授予IAM实体对 Billing Conductor 控制台的只读访问权限。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "billingconductor:List*", "Resource": "*" }, { "Effect": "Allow", "Action": "organizations:ListAccounts", "Resource": "*" }, { "Effect": "Allow", "Action": "pricing:DescribeServices", "Resource": "*" } ] }

通过账单控制台授予 Billing Conductor 访问权限

在此示例中,IAM实体可以通过账单控制台中的账单页面切换和查看形式账单数据。

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

通过 AWS 成本和使用情况报告授予计费指挥员访问权限

在此示例中,IAM实体可以通过其账单控制台中的 “成本和使用情况报告” 页面切换和查看形式账单数据。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "billing:ListBillingViews", "aws-portal:ViewBilling", "cur:DescribeReportDefinitions" ], "Resource": "*" } ] }

授予 Billing Conductor 对导入组织单位功能的访问权限

在此示例中,IAM实体对创建账单组时导入组织单位 (OU) 账户所需的特定 AWS Organizations API操作具有只读访问权限。导入 OU 功能在 B AWS illing Conductor 控制台上。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "organizations:ListRoots", "organizations:ListOrganizationalUnitsForParent", "organizations:ListChildren" ], "Resource": "*" } ] }

拒绝 Billing 和 Cost Explorer 访问不支持形式费用的服务和功能

在此示例中,IAM实体被拒绝访问不支持形式费用的服务和功能。该政策包括管理账户和个人成员账户中可能采取的操作清单。

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Deny", "Action": [ "aws-portal:ModifyAccount", "aws-portal:ModifyBilling", "aws-portal:ModifyPaymentMethods", "aws-portal:ViewPaymentMethods", "aws-portal:ViewAccount", "cur:GetClassic*", "cur:Validate*", "tax:List*", "tax:Get*", "tax:Put*", "tax:ListTaxRegistrations", "tax:BatchPut*", "tax:UpdateExemptions", "freetier:Get*", "payments:Get*", "payments:List*", "payments:Update*", "payments:GetPaymentInstrument", "payments:GetPaymentStatus", "purchase-orders:ListPurchaseOrders", "purchase-orders:ListPurchaseOrderInvoices", "consolidatedbilling:GetAccountBillingRole", "consolidatedbilling:Get*", "consolidatedbilling:List*", "invoicing:List*", "invoicing:Get*", "account:Get*", "account:List*", "account:CloseAccount", "account:DisableRegion", "account:EnableRegion", "account:GetContactInformation", "account:GetAccountInformation", "account:PutContactInformation", "billing:GetBillingPreferences", "billing:GetContractInformation", "billing:GetCredits", "billing:RedeemCredits", "billing:Update*", "ce:GetPreferences", "ce:UpdatePreferences", "ce:GetReservationCoverage", "ce:GetReservationPurchaseRecommendation", "ce:GetReservationUtilization", "ce:GetSavingsPlansCoverage", "ce:GetSavingsPlansPurchaseRecommendation", "ce:GetSavingsPlansUtilization", "ce:GetSavingsPlansUtilizationDetails", "ce:ListSavingsPlansPurchaseRecommendationGeneration", "ce:StartSavingsPlansPurchaseRecommendationGeneration", "ce:UpdateNotificationSubscription" ], "Resource": "*" }] }

有关更多信息,请参阅 AWS 服务 这支持形式成本