ワークグループのポリシーの例 - Amazon Athena

「翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。」

ワークグループのポリシーの例

このセクションには、ワークグループに対するさまざまなアクションを有効にするために使用できるポリシーの例が含まれています。

ワークグループは、Athena で管理されている IAM リソースです。そのため、ワークグループポリシーが入力として workgroup を実行するアクションを使用する場合、ワークグループの ARN を次のように指定する必要があります。

"Resource": [arn:aws:athena:<region>:<user-account>:workgroup/<workgroup-name>]

<workgroup-name> は、ワークグループの名前です。たとえば、test_workgroup という名前のワークグループの場合は、次のようにリソースとして指定します。

"Resource": ["arn:aws:athena:us-east-1:123456789012:workgroup/test_workgroup"]

すべての Amazon Athena アクションのリストについては、Amazon Athena API リファレンスで API アクション名を参照してください。ポリシーの詳細については、IAM の「ビジュアルエディタを使用したポリシーの作成」を参照してください。IAM ユーザーガイドワークグループの IAM ポリシーの作成の詳細については、「ワークグループの IAM ポリシー」を参照してください。

すべてのワークグループへのフルアクセスのポリシーの例

次のポリシーでは、アカウントに存在している可能性があるすべてのワークグループリソースへのフルアクセスを許可します。アカウントの他のすべてのユーザーのワークグループを管理する必要があるユーザーにこのポリシーを使用することをお勧めします。

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

特定のワークグループへのフルアクセスのポリシーの例

次のポリシーでは、workgroupA という名前の 1 つの特定のワークグループリソースへのフルアクセスを許可します。 特定のワークグループを完全に制御しているユーザーにこのポリシーを使用できます。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:ListEngineVersions", "athena:ListWorkGroups", "athena:GetExecutionEngine", "athena:GetExecutionEngines", "athena:GetNamespace", "athena:GetCatalogs", "athena:GetNamespaces", "athena:GetTables", "athena:GetTable" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "athena:StartQueryExecution", "athena:GetQueryResults", "athena:DeleteNamedQuery", "athena:GetNamedQuery", "athena:ListQueryExecutions", "athena:StopQueryExecution", "athena:GetQueryResultsStream", "athena:ListNamedQueries", "athena:CreateNamedQuery", "athena:GetQueryExecution", "athena:BatchGetNamedQuery", "athena:BatchGetQueryExecution" ], "Resource": [ "arn:aws:athena:us-east-1:123456789012:workgroup/workgroupA" ] }, { "Effect": "Allow", "Action": [ "athena:DeleteWorkGroup", "athena:UpdateWorkGroup", "athena:GetWorkGroup", "athena:CreateWorkGroup" ], "Resource": [ "arn:aws:athena:us-east-1:123456789012:workgroup/workgroupA" ] } ] }

指定したワークグループでクエリを実行するためのポリシーの例

次のポリシーでは、ユーザは指定された workgroupA でクエリを実行し、それらを表示することを許可されています。ユーザーは、ワークグループの更新や削除など、ワークグループ自体の管理タスクを実行することはできません。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:ListWorkGroups", "athena:GetExecutionEngine", "athena:GetExecutionEngines", "athena:GetNamespace", "athena:GetCatalogs", "athena:GetNamespaces", "athena:GetTables", "athena:GetTable" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "athena:StartQueryExecution", "athena:GetQueryResults", "athena:DeleteNamedQuery", "athena:GetNamedQuery", "athena:ListQueryExecutions", "athena:StopQueryExecution", "athena:GetQueryResultsStream", "athena:ListNamedQueries", "athena:CreateNamedQuery", "athena:GetQueryExecution", "athena:BatchGetNamedQuery", "athena:BatchGetQueryExecution", "athena:GetWorkGroup" ], "Resource": [ "arn:aws:athena:us-east-1:123456789012:workgroup/workgroupA" ] } ] }

プライマリワークグループでクエリを実行するためのポリシーの例

次の例では、特定のユーザーがプライマリワークグループでクエリを実行できるようにするポリシーを使用します。

注記

指定されたワークグループでクエリを実行するように設定されているすべてのユーザーにこのポリシーを追加することをお勧めします。このポリシーをワークグループのユーザーポリシーに追加すると、指定されたワークグループが削除されたり無効になったりする場合に役立ちます。この場合、プライマリワークグループでクエリを実行し続けることができます。

アカウントのユーザーがプライマリワークグループでクエリを実行できるようにするには、Example Policy for Running Queries in a Specified Workgroup のリソースセクションに次のポリシーを追加します。

"arn:aws:athena:us-east-1:123456789012:workgroup/primary"

指定したワークグループに対する管理オペレーションのポリシーの例

次のポリシーでは、ユーザはワークグループ test_workgroup の作成、削除、詳細の取得、および更新を許可されています。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:ListEngineVersions" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "athena:CreateWorkGroup", "athena:GetWorkGroup", "athena:DeleteWorkGroup", "athena:UpdateWorkGroup" ], "Resource": [ "arn:aws:athena:us-east-1:123456789012:workgroup/test_workgroup" ] } ] }

ワークグループを一覧表示するためのポリシーの例

次のポリシーでは、すべてのワークグループをすべてのユーザーが一覧表示できるようにします。

{ "Effect": "Allow", "Action": [ "athena:ListWorkGroups" ], "Resource": "*" }

特定のワークグループでクエリを実行および停止するためのポリシーの例

このポリシーでは、ユーザーは、ワークグループでクエリを実行できます。

{ "Effect": "Allow", "Action": [ "athena:StartQueryExecution", "athena:StopQueryExecution" ], "Resource": [ "arn:aws:athena:us-east-1:123456789012:workgroup/test_workgroup" ] }

特定のワークグループで名前付きクエリを使用するポリシーの例

次のポリシーでは、ユーザーは指定されたワークグループの名前付きクエリに関する情報を作成、削除、および取得するアクセス権限を持っています。

{ "Effect": "Allow", "Action": [ "athena:CreateNamedQuery", "athena:GetNamedQuery", "athena:DeleteNamedQuery" ], "Resource": [ "arn:aws:athena:us-east-1:123456789012:workgroup/test_workgroup" ] }