聯合事件資料存放區 - AWS CloudTrail

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

聯合事件資料存放區

聯合事件資料存放區可讓您在資料目錄中檢視與事件資料存放區相關聯的中繼 AWS Glue 資料、向資料目錄註冊 AWS Lake Formation,以及讓您使用 Amazon Athena 針對事件資料執行 SQL 查詢。儲存在 AWS Glue 資料目錄中的表格中繼資料可讓 Athena 查詢引擎瞭解如何尋找、讀取和處理您要查詢的資料。

您可以使用 CloudTrail 主控台或 EnableFederationAPI 作業來啟用聯合。 AWS CLI啟用 Lake 查詢聯合時,會在「資料目錄」中 CloudTrail建立名為 aws:cloudtrail (如果資料庫尚未存在) 的受管理資料庫和受管理的聯合 AWS Glue 資料表。事件資料存放區 ID 用於表格名稱。 CloudTrail 在中註冊聯合角色 ARN 和事件資料存放區 AWS Lake Formation,該服務負責允許對資料目錄中聯合資源進行精細存取控制。 AWS Glue

若要啟用 Lake 查詢聯合,您必須建立新的 IAM 角色或選擇現有角色。Lake Formation 會使用此角色來管理聯合事件資料存放區的許可。當您使用 CloudTrail 主控台建立新角色時, CloudTrail 會自動為該角色建立必要的權限。如果您選擇現有角色,請確認該角色可提供最低許可

您可以使用 CloudTrail 主控台或 DisableFederationAPI 作業停用聯合。 AWS CLI當您停用聯合時,請 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 湖泊聯合資源 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 資料建立資料集

  • 如果已啟用聯合,則無法刪除事件資料存放區。若要刪除聯合事件資料存放區,您必須先停用聯合終止保護 (若已啟用)。

  • 下列考量適用於組織事件資料存放區:

    • 只有一個委派管理員帳戶或管理帳戶可以在組織事件資料存放區上啟用聯合。其他委派管理員帳戶仍可使用 Lake Formation 資料共用功能來查詢和共用資訊。

    • 任何委派管理員帳戶或組織的管理帳戶都能停用聯合。

聯合的所需許可

聯合事件資料存放區之前,請確認您擁有聯合角色以及啟用和停用聯合所需的所有許可。如果您選擇現有的 IAM 角色來啟用聯合,則只需要更新 IAM 角色許可。如果您選擇使用 CloudTrail 主控台建立新的 IAM 角色,請 CloudTrail 提供該角色的所有必要許可。

用於聯合事件資料存放區的 IAM 許可

啟用聯合時,您可以選擇建立新的 IAM 角色,也可以使用現有的 IAM 角色。當您選擇新的 IAM 角色時,請 CloudTrail 建立具有所需許可的 IAM 角色,您不需要進一步採取任何動作。

如果您選擇現有角色,請確保 IAM 角色的政策可提供啟用聯合所需的許可。此區段提供所需 IAM 角色許可和信任政策的範例。

下列範例提供聯合角色的許可政策。對於第一個陳述式,請為 Resource 提供事件資料存放區的完整 ARN。

此政策中的第二個陳述式,可讓 Lake Formation 為使用 KMS 金鑰加密的事件資料存放區解密資料。將 key-regionaccount-idkey-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 Lake Formation 以及管理資源註冊。 AWS Glue

{ "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 資料表,以及 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" } ] }