イベントデータストアのフェデレーション - AWS CloudTrail

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

イベントデータストアのフェデレーション

イベントデータストアをフェデレーションすると、データカタログ 内の AWS Glue イベントデータストアに関連付けられたメタデータを表示したり、 にデータカタログを登録したり AWS Lake Formation、Amazon Athena を使用してイベントデータに対してSQLクエリを実行したりできます。 AWS Glue データカタログに保存されているテーブルメタデータにより、Athena クエリエンジンはクエリするデータを検索、読み取り、処理する方法を知ることができます。

フェデレーションを有効にするには、 CloudTrail コンソール AWS CLI、、または EnableFederationAPIオペレーションを使用します。Lake クエリフェデレーションを有効にすると、 CloudTrail は という名前のマネージドデータベース aws:cloudtrail (データベースがまだ存在しない場合) と、 AWS Glue Data Catalog にマネージドフェデレーションテーブルを作成します。イベントデータストア ID はテーブル名に使用されます。 は、フェデレーションロールARNとイベントデータストアを CloudTrail に登録します。これはAWS Lake Formation、 AWS Glue Data Catalog 内のフェデレーションリソースのきめ細かなアクセス制御を許可するサービスです。

Lake クエリフェデレーションを有効にするには、新しいIAMロールを作成するか、既存のロールを選択する必要があります。Lake Formation はこのロールを使用して、フェデレーションイベントデータストアのアクセス許可を管理します。 CloudTrail コンソールを使用して新しいロールを作成すると、 はロールに必要なアクセス許可 CloudTrail を自動的に作成します。既存のロールを選択する場合は、ロールが最小限のアクセス許可を提供していることを確認してください。

CloudTrail コンソール、 AWS CLI、または DisableFederationAPIオペレーションを使用してフェデレーションを無効にすることができます。フェデレーションを無効にすると、 CloudTrail は AWS Glue、 AWS Lake Formation、および Amazon Athena との統合を無効にします。Lake クエリフェデレーションを無効にした後は、Athena でイベントデータをクエリできなくなります。フェデレーションを無効にすると CloudTrail Lake データは削除されず、引き続き CloudTrail Lake でクエリを実行できます。

CloudTrail Lake イベントデータストアのフェデレーションには CloudTrail 料金はかかりません。Amazon Athena でクエリを実行するにはコストがかかります。Athena の料金の詳細については、「Amazon Athena の料金」を参照してください。

考慮事項

イベントデータストアのフェデレーションを行う場合は、以下の要素を考慮してください。

  • CloudTrail Lake イベントデータストアのフェデレーションには CloudTrail 料金はかかりません。Amazon Athena でクエリを実行するにはコストがかかります。Athena の料金の詳細については、「Amazon Athena の料金」を参照してください。

  • Lake Formation は、フェデレーションリソースのアクセス許可を管理するために使用されます。フェデレーションロールを削除するか、Lake Formation または からリソースへのアクセス許可を取り消す場合 AWS Glue、Athena からクエリを実行することはできません。Lake Formation 操作の詳細については、を使用した CloudTrail Lake フェデレーションリソースの管理 AWS Lake Formation を参照してください。

  • Amazon Athena を使用して Lake Formation に登録されたデータをクエリするユーザーには、 lakeformation:GetDataAccessアクションを許可するIAMアクセス許可ポリシーが必要です。 AWS マネージドポリシー: は、このアクションAmazonAthenaFullAccessを許可します。インラインポリシーを使用する場合は、このアクションを許可するように許可ポリシーを更新してください。詳細については、「Lake Formation と Athena ユーザー許可の管理」を参照してください。

  • Athena のフェデレーションテーブルにビューを作成するには、aws:cloudtrail 以外の送信先データベースが必要です。これは、aws:cloudtrailデータベースが によって管理されているためです CloudTrail。

  • Amazon でデータセットを作成するには QuickSight、カスタム を使用する SQL オプションを選択する必要があります。詳細については、「Amazon Athena データを使用したデータセットの作成」を参照してください。

  • フェデレーションが有効になっている場合、イベントデータストアを削除することはできません。フェデレーションイベントデータストアを削除するには、まず、フェデレーションを無効化し、終了保護が有効になっている場合はこれも無効にする必要があります。

  • 組織のイベントデータストアには、次の考慮事項が適用されます。

    • 組織のイベントデータストアでフェデレーションを有効にできるのは、委任された管理者アカウントの 1 つ、または管理アカウントだけです。他の委任された管理者アカウントも、Lake Formation データ共有機能を使用して情報をクエリおよび共有することはできます。

    • すべての委任された管理者アカウントも組織の管理アカウントもフェデレーションを無効にできます。

フェデレーションに必要なアクセス許可

イベントデータストアのフェデレーションを行う前に、フェデレーションロールとフェデレーションの有効化と無効化に必要なすべてのアクセス許可があることを確認してください。フェデレーションを有効にする既存のロールを選択した場合のみ、フェデレーションIAMロールのアクセス許可を更新する必要があります。 CloudTrail コンソールを使用して新しいIAMロールを作成することを選択した場合、 はロールに必要なすべてのアクセス許可 CloudTrail を提供します。

IAM イベントデータストアをフェデレーションするための アクセス許可

フェデレーションを有効にすると、新しいIAMロールを作成するか、既存のIAMロールを使用するかを選択できます。新しいIAMロールを選択すると、 は必要なアクセス許可を持つ IAM ロール CloudTrail を作成し、ユーザー側でそれ以上のアクションは必要ありません。

既存のロールを選択する場合は、IAMそのロールのポリシーでフェデレーションを有効にするために必要なアクセス許可が付与されていることを確認します。このセクションでは、必要なIAMロールのアクセス許可と信頼ポリシーの例を示します。

次の例は、フェデレーションロールのアクセス許可ポリシーを示しています。最初のステートメントでは、 ARNのイベントデータストアの完全な を指定しますResource

このポリシーの 2 番目のステートメントは、Lake Formation がKMSキーで暗号化されたイベントデータストアのデータを復号することを許可します。置換 key-region, account-id および key-id KMS キーの値を入力します。イベントデータストアが暗号化にKMSキーを使用しない場合は、このステートメントを省略できます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "LakeFederationEDSDataAccess", "Effect": "Allow", "Action": "cloudtrail:GetEventDataStoreData", "Resource": "arn:aws:cloudtrail:eds-region:account-id:eventdatastore/eds-id" }, { "Sid": "LakeFederationKMSDecryptAccess", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:key-region:account-id:key/key-id" } ] }

次の例では、 がフェデレーティッドイベントデータストアのアクセス許可を管理する IAMロールを AWS Lake Formation 引き受けることを許可するIAM信頼ポリシーを示します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "lakeformation.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

フェデレーションの有効化に必要なアクセス許可

次のポリシーの例は、イベントデータストアでフェデレーションを有効にするために最低限必要なアクセス許可を提供します。このポリシーにより CloudTrail 、 はイベントデータストアでフェデレーションを有効に AWS Glue し、 AWS Glue Data Catalog でフェデレーションリソースを作成し、リソース登録 AWS Lake Formation を管理できます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CloudTrailEnableFederation", "Effect": "Allow", "Action": "cloudtrail:EnableFederation", "Resource": "arn:aws:cloudtrail:region:account-id:eventdatastore/eds-id" }, { "Sid": "FederationRoleAccess", "Effect": "Allow", "Action": [ "iam:PassRole", "iam:GetRole" ], "Resource": "arn:aws:iam::region:role/federation-role-name" }, { "Sid": "GlueResourceCreation", "Effect": "Allow", "Action": [ "glue:CreateDatabase", "glue:CreateTable", "glue:PassConnection" ], "Resource": [ "arn:aws:glue:region:account-id:catalog", "arn:aws:glue:region:account-id:database/aws:cloudtrail", "arn:aws:glue:region:account-id:table/aws:cloudtrail/eds-id", "arn:aws:glue:region:account-id:connection/aws:cloudtrail" ] }, { "Sid": "LakeFormationRegistration", "Effect": "Allow", "Action": [ "lakeformation:RegisterResource", "lakeformation:DeregisterResource" ], "Resource": "arn:aws:lakeformation:region:account-id:catalog:account-id" } ] }

フェデレーションの無効化に必要なアクセス許可

次のポリシーの例は、イベントデータストアでフェデレーションを無効にするために最低限必要なリソースを提供します。このポリシーにより、 CloudTrail はイベントデータストアでのフェデレーションを無効に AWS Glue し、 AWS Glue Data Catalog 内のマネージドフェデレーションテーブルを削除し、Lake Formation はフェデレーションリソースの登録を解除できます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CloudTrailDisableFederation", "Effect": "Allow", "Action": "cloudtrail:DisableFederation", "Resource": "arn:aws:cloudtrail:region:account-id:eventdatastore/eds-id" }, { "Sid": "GlueTableDeletion", "Effect": "Allow", "Action": "glue:DeleteTable", "Resource": [ "arn:aws:glue:region:account-id:catalog", "arn:aws:glue:region:account-id:database/aws:cloudtrail", "arn:aws:glue:region:account-id:table/aws:cloudtrail/eds-id" ] }, { "Sid": "LakeFormationDeregistration", "Effect": "Allow", "Action": "lakeformation:DeregisterResource", "Resource": "arn:aws:lakeformation:region:account-id:catalog:account-id" } ] }