跨账户 CloudTrail 记录 - AWS Lake Formation
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

跨账户 CloudTrail 记录

Lake Formation 提供对数据湖中数据的所有跨账户访问的集中审核跟踪。当收件人 AWS 帐户访问共享表中的数据, Lake Formation 复制 CloudTrail 事件到拥有帐户的 CloudTrail 记录。复制的事件包括通过集成服务(例如, Amazon Athena 和 Amazon Redshift Spectrum、和数据访问 AWS Glue 作业。

CloudTrail 跨账户操作的事件 Data Catalog 资源同样被复制。

作为资源所有者,如果您启用对象级登录 Amazon S3,您可以运行加入S3的查询 CloudTrail 事件 Lake Formation CloudTrail 事件,以确定访问S3bucket的客户。

包括跨账户中的主体标识 CloudTrail 日志

默认情况下,跨账户 CloudTrail 添加到共享资源接收者日志并复制到资源所有者日志的事件仅包含 AWS 外部帐户主体的主体ID—而非主体(主体ARN)的人类可读的Amazon资源名称(ARN)。在可信范围内共享资源时,例如在同一组织或团队内,您可以选择将主要ARN纳入 CloudTrail 活动。然后,资源所有者账户可以跟踪访问其拥有的资源的接收者账户中的主体。

重要

作为共享资源接收者,查看您个人活动中的主要ARN CloudTrail 日志,您必须选择加入,才能与所有者帐户共享主ARN。

如果数据访问通过资源链接发生,则两个事件记录在共享资源接收方账户中:一个用于资源链接访问,另一个用于目标资源访问。用于访问资源链接的事件 包括负责人ARN。目标资源访问的事件不包括没有选择加入的主体ARN。资源链接访问事件未复制到所有者帐户。

以下是默认跨帐户的摘录 CloudTrail 事件(不选择加入)。执行数据访问的帐户是 1111-2222-3333. 这是 显示 在呼叫帐户和资源所有者帐户中。 Lake Formation 填充s 在交叉帐户案例中登录两个帐户。

{ "eventVersion": "1.05", "userIdentity": { "type": "AWSAccount", "principalId": "AROAQGFTBBBGOBWV2EMZA:GlueJobRunnerSession", "accountId": "111122223333" }, "eventSource": "lakeformation.amazonaws.com", "eventName": "GetDataAccess", ... ... "additionalEventData": { "requesterService": "GLUE_JOB", "lakeFormationRoleSessionName": "AWSLF-00-GL-111122223333-G13T0Rmng2" }, ... }

作为共享资源消费者,当您选择纳入主体ARN时,摘录将变为以下。的 lakeFormationPrincipal 字段表示执行查询的最终角色或用户,通过 Amazon Athena, Amazon Redshift Spectrum,或 AWS Glue 作业。

{ "eventVersion": "1.05", "userIdentity": { "type": "AWSAccount", "principalId": "AROAQGFTBBBGOBWV2EMZA:GlueJobRunnerSession", "accountId": "111122223333" }, "eventSource": "lakeformation.amazonaws.com", "eventName": "GetDataAccess", ... ... "additionalEventData": { "requesterService": "GLUE_JOB", "lakeFormationPrincipal": "arn:aws:iam::111122223333:role/ETL-Glue-Role", "lakeFormationRoleSessionName": "AWSLF-00-GL-111122223333-G13T0Rmng2" }, ... }

选择包含承运人 ARNs 跨账户 CloudTrail 日志

  1. Open the Lake Formation console at https://console.amazonaws.cn/lakeformation/.

    登录为 Administrator 用户,或具有 AdministratorAccess IAM 政策。

  2. 在导航窗格中,选择 Settings

  3. 数据目录设置 页面,在 AWS的默认权限 CloudTrail 部分,用于 资源所有者,输入一个或多个 AWS 资源所有者帐户 IDs.

    输入 每个帐户ID之后。

  4. 选择 Save (保存)

    现在跨账户 CloudTrail 日志中存储的事件 共享资源接收方和资源所有者 包含主体ARN。

正在查询 CloudTrail 日志 Amazon S3 跨账户访问

作为共享资源所有者,您可以查询S3 CloudTrail 日志,以确定已访问您的的帐户 Amazon S3 bucket(前提是您已启用对象级登录 Amazon S3)。这仅适用于您注册的S3地点 Lake Formation. 如果共享资源消费者选择加入以包含主体 ARNs 英寸 Lake Formation CloudTrail 日志,您可以确定访问bucket的角色或用户。

运行查询时 Amazon Athena,您可以加入 Lake Formation CloudTrail 事件和S3 CloudTrail 会话名称属性的事件。查询也可以筛选 Lake Formation 事件 eventName="GetDataAccess"和S3事件 eventName="GetObject"eventName="PutObject".

以下摘自 Lake Formation 跨帐户 CloudTrail 访问已注册S3位置中的数据的事件。

{ "eventSource": "lakeformation.amazonaws.com", "eventName": "GetDataAccess", .............. .............. "additionalEventData": { "requesterService": "GLUE_JOB", "lakeFormationPrincipal": "arn:aws:iam::111122223333:role/ETL-Glue-Role", "lakeFormationRoleSessionName": "AWSLF-00-GL-111122223333-B8JSAjo5QA" } }

lakeFormationRoleSessionName 关键值 AWSLF-00-GL-111122223333-B8JSAjo5QA,可用中的会话名称加入 principalId S3键 CloudTrail 事件。以下是S3的摘录 CloudTrail 事件。它显示会话名称的位置。

{ "eventSource": "s3.amazonaws.com", "eventName": "GetObject" .............. .............. "principalId": "AROAQSOX5XXUR7D6RMYLR:AWSLF-00-GL-111122223333-B8JSAjo5QA", "arn": "arn:aws:sts::111122223333:assumed-role/AWSServiceRoleForLakeFormationDataAccess/AWSLF-00-GL-111122223333-B8JSAjo5QA", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAQSOX5XXUR7D6RMYLR", "arn": "arn:aws:iam::111122223333:role/aws-service-role/lakeformation.amazonaws.com/AWSServiceRoleForLakeFormationDataAccess", "accountId": "111122223333", "userName": "AWSServiceRoleForLakeFormationDataAccess" }, .............. .............. }

会话名称的格式如下:

AWSLF-<version-number>-<query-engine-code>-<account-id->-<suffix>
version-number

这个格式的版本,目前 00。如果会话名称格式发生变化,下一个版本将 01.

query-engine-code

指明访问数据的实体。当前值为:

GL AWS Glue ETL作业
AT Athena
RE Amazon Redshift Spectrum
account-id

的 AWS 请求凭证的帐户ID Lake Formation.

suffix

随机生成的字符串。