Amazon Athena の AWS 管理ポリシー
AWS マネージドポリシーは、AWS が作成および管理するスタンドアロンポリシーです。AWS マネージドポリシーは、多くの一般的なユースケースで権限を提供できるように設計されているため、ユーザー、グループ、ロールへの権限の割り当てを開始できます。
AWS マネージドポリシーは、ご利用の特定のユースケースに対して最小特権のアクセス許可を付与しない場合があることにご注意ください。AWSのすべてのお客様が使用できるようになるのを避けるためです。ユースケース別にカスタマーマネージドポリシーを定義して、マネージドポリシーを絞り込むことをお勧めします。
AWS マネージドポリシーで定義したアクセス権限は変更できません。AWS が AWS マネージドポリシーに定義されている権限を更新すると、更新はポリシーがアタッチされているすべてのプリンシパルアイデンティティ (ユーザー、グループ、ロール) に影響します。新しい AWS のサービス を起動するか、既存のサービスで新しい API オペレーションが使用可能になると、AWS が AWS マネージドポリシーを更新する可能性が最も高くなります。
詳細については、「IAM ユーザーガイド」の「AWS 管理ポリシー」を参照してください。
Athena で管理ポリシーを使用する際の考慮事項
マネージドポリシーは使用しやすく、サービスの高度化に伴い必要になるアクションで自動的に更新されます。Athena で管理ポリシーを使用する場合は、次の点に注意してください。
-
AWS Identity and Access Management (IAM) を使用して自分自身または他のユーザーに対して Amazon Athena サービスアクションを許可または拒否するには、ユーザーやグループなどのプリンシパルにアイデンティティベースのポリシーをアタッチします。
-
各アイデンティティベースのポリシーは、許可または拒否されるアクションを定義するステートメントで構成されます。ポリシーをユーザーにアタッチするための詳細情報および手順については、「IAM ユーザーガイド」の「管理ポリシーのアタッチ」を参照してください。アクションの一覧については、Amazon Athena API リファレンスを参照してください。
-
カスタマーマネージドポリシーとアイデンティティベースのインラインポリシーは、アクセス権を微調整するために、ポリシー内でより詳細な Athena アクションを指定できるようにします。
AmazonAthenaFullAccess
ポリシーを開始点として使用し、次に Amazon Athena API リファレンスに示されている特定のアクションを許可または拒否することをお勧めします。インラインポリシーの詳細については、「IAM ユーザーガイド」の「管理ポリシーとインラインポリシー」を参照してください。 -
JDBC を使用して接続するプリンシパルに対しては、JDBC ドライバーの認証情報をアプリケーションに提供する必要があります。詳細については、「JDBC および ODBC 接続を介したアクセスの制御」を参照してください。
-
AWS Glue データカタログを暗号化している場合は、Athena のアイデンティティベースの IAM ポリシーで追加のアクションを指定する必要があります。詳細については、「AWS Glue Data Catalog で Athena から暗号化されたメタデータへのアクセスを構成する」を参照してください。
-
ワークグループを作成して使用する場合、ポリシーにワークグループアクションへの関連するアクセス許可が含まれていることを確認してください。詳細については、「IAM ポリシーを使用してワークグループのアクセスを制御する」および「ワークグループのポリシーの例」を参照してください。
AWS 管理ポリシー: AmazonAthenaFullAccess
AmazonAthenaFullAccess
マネージドポリシーは Athena への完全なアクセス権を付与します。
アクセスを提供するには、ユーザー、グループ、またはロールにアクセス許可を追加します。
-
AWS IAM Identity Center のユーザーとグループ:
アクセス許可セットを作成します。「AWS IAM Identity Center ユーザーガイド」の「権限設定を作成する」の手順に従ってください。
-
IAM 内で、ID プロバイダーによって管理されているユーザー:
ID フェデレーションのロールを作成します。詳細については、「IAM ユーザーガイド」の「サードパーティー ID プロバイダー (フェデレーション) 用のロールの作成」を参照してください。
-
IAM ユーザー:
-
ユーザーが担当できるロールを作成します。手順については、「IAM ユーザーガイド」の「IAM ユーザー用ロールの作成」を参照してください。
-
(お奨めできない方法) ポリシーをユーザーに直接アタッチするか、ユーザーをユーザーグループに追加する。「IAM ユーザーガイド」の「ユーザー (コンソール) へのアクセス許可の追加」の指示に従います。
-
アクセス許可のグループ化
AmazonAthenaFullAccess
ポリシーは、以下のアクセス許可セットにグループ化されます。
-
athena
– Athena リソースへのアクセスをプリンシパルに許可します。 -
glue
– AWS Glue データベース、テーブル、およびパーティションへのアクセスをプリンシパルに許可します。これは、プリンシパルが Athena で AWS Glue Data Catalog を使用するのに必要です。 -
s3
– Amazon S3 からのクエリ結果の書き込みと読み込み、Amazon S3 に存在する公開されている Athena データサンプルの読み込み、およびバケットの一覧表示をプリンシパルに許可します。これは、プリンシパルが Athena を使用して Amazon S3 を操作できるようにするために必要です。 -
sns
– Amazon SNS トピックの一覧表示と、トピック属性の取得をプリンシパルに許可します。これにより、プリンシパルは Amazon SNS トピックを Athena とともに使用して、モニタリングおよびアラートの目的で使用できるようになります。 -
cloudwatch
– CloudWatch アラームの作成、読み込み、削除をプリンシパルに許可します。詳細については、「CloudWatch と EventBridge を使用してクエリをモニタリングし、コストを管理する」を参照してください。 -
lakeformation
- プリンシパルが一時的な認証情報を要求して、Lake Formation に登録されているデータレイクの場所にあるデータにアクセスできるようにします。詳細については、「AWS Lake Formation デベロッパーガイド」の「Underlying Data Access Control」(基盤となるデータアクセスコントロール) を参照してください。 -
datazone
— プリンシパルで Amazon DataZone プロジェクト、ドメイン、環境を一覧表示できるようにします。Athena での DataZone の使用に関する詳細については、「Athena で Amazon DataZone を使用する」を参照してください。 -
pricing
- AWS Billing and Cost Management へのアクセスを提供します。詳細については、「AWS Billing and Cost Management API リファレンス」の「GetProducts」を参照してください。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "BaseAthenaPermissions", "Effect": "Allow", "Action": [ "athena:*" ], "Resource": [ "*" ] }, { "Sid": "BaseGluePermissions", "Effect": "Allow", "Action": [ "glue:CreateDatabase", "glue:DeleteDatabase", "glue:GetDatabase", "glue:GetDatabases", "glue:UpdateDatabase", "glue:CreateTable", "glue:DeleteTable", "glue:BatchDeleteTable", "glue:UpdateTable", "glue:GetTable", "glue:GetTables", "glue:BatchCreatePartition", "glue:CreatePartition", "glue:DeletePartition", "glue:BatchDeletePartition", "glue:UpdatePartition", "glue:GetPartition", "glue:GetPartitions", "glue:BatchGetPartition", "glue:StartColumnStatisticsTaskRun", "glue:GetColumnStatisticsTaskRun", "glue:GetColumnStatisticsTaskRuns", "glue:GetCatalogImportStatus" ], "Resource": [ "*" ] }, { "Sid": "BaseQueryResultsPermissions", "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload", "s3:CreateBucket", "s3:PutObject", "s3:PutBucketPublicAccessBlock" ], "Resource": [ "arn:aws:s3:::aws-athena-query-results-*" ] }, { "Sid": "BaseAthenaExamplesPermissions", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::athena-examples*" ] }, { "Sid": "BaseS3BucketPermissions", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation", "s3:ListAllMyBuckets" ], "Resource": [ "*" ] }, { "Sid": "BaseSNSPermissions", "Effect": "Allow", "Action": [ "sns:ListTopics", "sns:GetTopicAttributes" ], "Resource": [ "*" ] }, { "Sid": "BaseCloudWatchPermissions", "Effect": "Allow", "Action": [ "cloudwatch:PutMetricAlarm", "cloudwatch:DescribeAlarms", "cloudwatch:DeleteAlarms", "cloudwatch:GetMetricData" ], "Resource": [ "*" ] }, { "Sid": "BaseLakeFormationPermissions", "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess" ], "Resource": [ "*" ] }, { "Sid": "BaseDataZonePermissions", "Effect": "Allow", "Action": [ "datazone:ListDomains", "datazone:ListProjects", "datazone:ListAccountEnvironments" ], "Resource": [ "*" ] }, { "Sid": "BasePricingPermissions", "Effect": "Allow", "Action": [ "pricing:GetProducts" ], "Resource": [ "*" ] } ] }
AWS 管理ポリシー: AWSQuicksightAthenaAccess
AWSQuicksightAthenaAccess
は Amazon QuickSight が Athena との統合に必要とするアクションにアクセス権を付与します。AWSQuicksightAthenaAccess
ポリシーは IAM ID にアタッチできます。このポリシーは、Athena で Amazon QuickSight を使用するプリンシパルのみにアタッチします。このポリシーには、非推奨となったために現行のパブリック API に含まれていない、または JDBC ドライバーおよび ODBC ドライバーのみで使用される Athena 用のアクションがいくつか含まれています。
アクセス許可のグループ化
AWSQuicksightAthenaAccess
ポリシーは、以下のアクセス許可セットにグループ化されます。
-
athena
– Athena リソースに対するクエリの実行をプリンシパルに許可します。 -
glue
– AWS Glue データベース、テーブル、およびパーティションへのアクセスをプリンシパルに許可します。これは、プリンシパルが Athena で AWS Glue Data Catalog を使用するのに必要です。 -
s3
– Amazon S3 からのクエリ結果の書き込みおよび読み込みを行うことをプリンシパルに許可します。 -
lakeformation
- プリンシパルが一時的な認証情報を要求して、Lake Formation に登録されているデータレイクの場所にあるデータにアクセスできるようにします。詳細については、「AWS Lake Formation デベロッパーガイド」の「Underlying Data Access Control」(基盤となるデータアクセスコントロール) を参照してください。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:BatchGetQueryExecution", "athena:GetQueryExecution", "athena:GetQueryResults", "athena:GetQueryResultsStream", "athena:ListQueryExecutions", "athena:StartQueryExecution", "athena:StopQueryExecution", "athena:ListWorkGroups", "athena:ListEngineVersions", "athena:GetWorkGroup", "athena:GetDataCatalog", "athena:GetDatabase", "athena:GetTableMetadata", "athena:ListDataCatalogs", "athena:ListDatabases", "athena:ListTableMetadata" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "glue:CreateDatabase", "glue:DeleteDatabase", "glue:GetDatabase", "glue:GetDatabases", "glue:UpdateDatabase", "glue:CreateTable", "glue:DeleteTable", "glue:BatchDeleteTable", "glue:UpdateTable", "glue:GetTable", "glue:GetTables", "glue:BatchCreatePartition", "glue:CreatePartition", "glue:DeletePartition", "glue:BatchDeletePartition", "glue:UpdatePartition", "glue:GetPartition", "glue:GetPartitions", "glue:BatchGetPartition" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload", "s3:CreateBucket", "s3:PutObject", "s3:PutBucketPublicAccessBlock" ], "Resource": [ "arn:aws:s3:::aws-athena-query-results-*" ] }, { "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess" ], "Resource": [ "*" ] } ] }
Athena による AWS 管理ポリシーの更新
Athena の AWS 管理ポリシーの更新に関する詳細を、このサービスがこれらの変更の追跡を開始した以降の分について表示します。
変更 | 説明 | 日付 |
---|---|---|
AmazonAthenaFullAccess - 既存のポリシーへの更新 |
Athena が公開されている AWS Glue |
2024 年 6 月 18 日 |
AmazonAthenaFullAccess - 既存のポリシーへの更新 |
|
2024 年 1 月 3 日 |
AmazonAthenaFullAccess - 既存のポリシーへの更新 |
|
2024 年 1 月 3 日 |
AmazonAthenaFullAccess - 既存のポリシーへの更新 |
Athena は、AWS Billing and Cost Management へのアクセスを提供するために |
2023 年 1 月 25 日 |
AmazonAthenaFullAccess - 既存のポリシーへの更新 |
CloudWatch メトリクス値を取得するため、Athena は |
2022 年 11 月 14 日 |
AmazonAthenaFullAccess および AWSQuicksightAthenaAccess – 既存のポリシーの更新 |
Athena が |
2021 年 7 月 7 日 |
Athena が変更の追跡を開始 |
Athena が AWS 管理ポリシーの変更の追跡を開始しました。 |
2021 年 7 月 7 日 |