容量预留策略示例
本节包含可用于启用对容量预留执行的各种操作的策略示例。每当您使用 IAM policy 时,请确保遵循 IAM 最佳实践。有关更多信息,请参阅《IAM 用户指南》中的 IAM 安全最佳实践。
容量预留是由 Athena 托管的 IAM 资源。因此,如果容量预留策略使用将 capacity-reservation
用作输入的操作,则必须指定容量预留 ARN,如下所示:
"Resource": [arn:aws:athena:
<region>
:<user-account>
:capacity-reservation/<capacity-reservation-name>
]
其中,
为容量预留的名称。例如,对于名为 <capacity-reservation-name>
test_capacity_reservation
的容量预留,将其指定为资源,如下所示:
"Resource": ["arn:aws:athena:
us-east-1
:123456789012
:capacity-reservation/test_capacity_reservation"]
有关 Amazon Athena 操作的完整列表,请参阅 Amazon Athena API 参考中的 API 操作名称。有关 IAM policy 的更多信息,请参阅《IAM 用户指南》中的使用可视化编辑器创建策略。
例 用于列出容量预留的策略示例
以下策略允许所有用户列出所有容量预留。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:ListCapacityReservations" ], "Resource": "*" } ] }
例 适用于管理操作的策略示例
以下策略允许用户创建、取消和更新容量预留 test_capacity_reservation
以及获取其详细信息。该策略还允许用户将 workgroupA
和 workgroupB
分配给 test_capacity_reservation
。
{ "Version":"2012-10-17", "Statement":[ { "Effect": "Allow", "Action": [ "athena:CreateCapacityReservation", "athena:GetCapacityReservation", "athena:CancelCapacityReservation", "athena:UpdateCapacityReservation", "athena:GetCapacityAssignmentConfiguration", "athena:PutCapacityAssignmentConfiguration" ], "Resource": [ "arn:aws:athena:
us-east-1
:123456789012
:capacity-reservation/test_capacity_reservation
", "arn:aws:athena:us-east-1
:123456789012
:workgroup/workgroupA
", "arn:aws:athena:us-east-1
:123456789012
:workgroup/workgroupB
" ] } ] }