更新跨账户数据共享版本设置 - Amazon Lake Formation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

更新跨账户数据共享版本设置

不时Amazon Lake Formation更新跨账户数据共享设置,以区分对Amazon RAM使用情况所做的更改并支持对跨账户数据共享功能所做的更新。当 Lake Formation 这样做时,它会创建一个新版本的跨账户版本设置

跨账户版本设置之间的主要区别

有关在不同的跨账户版本设置下如何进行跨账户数据共享的更多信息,请参阅以下各节。

注意

要与其他账户共享数据,授予者必须拥有AWSLakeFormationCrossAccountManager托管 IAM 策略权限。这是所有版本的先决条件。

更新跨账户版本设置不会影响收件人对共享资源的权限。这适用于从版本 1 更新到版本 2、从版本 2 更新到版本 3 以及从版本 1 更新到版本 3 时。更新版本时,请参阅下面列出的注意事项。

第 1 版

命名资源方法:将授予的每份跨账户 Lake Formation 权限映射到一个Amazon RAM资源共享。用户(授予者角色或委托人)不需要额外权限。

LF-TBAC 方法:跨账户 Lake Formation 权限授予不用于Amazon RAM共享数据。用户必须具有glue:PutResourcePolicy权限。

更新版本的好处:初始版本-不适用。

更新版本时的注意事项:初始版本-不适用

版本 2

命名资源方法:通过将多个跨账户权限授予映射到一个Amazon RAM资源共享来优化Amazon RAM资源共享的数量。用户不需要额外权限。

LF-TBAC 方法:跨账户 Lake Formation 权限授予不用于Amazon RAM共享数据。用户必须具有glue:PutResourcePolicy权限。

更新版本的好处:通过优化Amazon RAM容量利用率实现可扩展的跨账户设置。

更新版本时的注意事项:想要授予跨账户 Lake Formation 权限的用户必须拥有AWSLakeFormationCrossAccountManagerAmazon托管策略中的权限。否则,您需要拥有ram:AssociateResourceShareram:DisassociateResourceShare权限才能成功与其他账户共享资源。

版本 3

命名资源方法:通过将多个跨账户权限授予映射到一个Amazon RAM资源共享来优化Amazon RAM资源共享的数量。用户不需要额外权限。

LF-TBAC 方法:Lake Formation Amazon RAM 用于跨账户授权。用户必须在glue:PutResourcePolicy权限中添加 glue: ShareResource 语句。收件人必须接受来自的资源共享邀请Amazon RAM。

更新版本的好处:支持以下功能:

  • 允许与外部账户中的 IAM 委托人明确共享资源。

    有关更多信息,请参阅授予和撤消对数据目录资源的权限

  • 使用 LF-TBAC 方法向组织或组织单位 (OU) 启用跨账户共享。

  • 消除了维护跨账户授权额外Amazon Glue策略的开销。

更新版本时的注意事项:如果授予者使用的版本低于版本 3,而接收者使用的是版本 3 或更高版本,则授予者会收到以下错误消息:“跨账户拨款请求无效。消费者账户可以选择加入跨账户版本:v3。请更新CrossAccountVersionDataLakeSetting到最低版本 v3(服务:AmazonDataCatalog;状态码:400;错误代码:InvalidInputException)”。但是,如果授予者使用版本 3,接收者使用版本 1 或版本 2,则跨账户授予将成功通过。

要直接与其他账户中的 IAM 委托人共享资源,只有授予者需要使用版本 3。

使用 LF-TBAC 方法进行的跨账户授权要求用户在账户中拥有Amazon Glue Data Catalog资源策略。当你更新到版本 3 时,LF-TBAC 会授予用户权限。Amazon RAM要使Amazon RAM基于跨账户的授权成功,您必须将该glue:ShareResource声明添加到现有 Data Catalog 资源策略中,如同时使用两者Amazon Glue和 Lake Formation 管理跨账户权限部分所示。

优化Amazon RAM资源共享

跨账户补助金的新版本(第 2 版及更高版本)以最佳方式利用Amazon RAM容量,最大限度地提高跨账户使用率。当您与外部Amazon Web Services 账户或 IAM 委托人共享资源时,Lake Formation 可能会创建新的资源共享或将该资源与现有共享相关联。通过与现有份额关联,Lake Formation减少了消费者需要接受的资源共享邀请的数量。

通过 TBAC 启用Amazon RAM共享或直接与委托人共享资源

要直接与其他账户中的 IAM 负责人共享资源或向组织或组织单位启用 TBAC 跨账户共享,您需要将跨账户版本设置更新到版本 3。有关Amazon RAM资源限制的更多信息,请参阅跨账户最佳做法和限制

更新跨账户版本设置所需的权限

如果跨账户权限授予者拥有AWSLakeFormationCrossAccountManager托管 IAM 策略权限,则无需为跨账户权限授予者角色或委托人设置额外的权限。但是,如果跨账户授予者未使用托管策略,则授予者角色或委托人应获得以下 IAM 权限,才能成功执行新版本的跨账户授权。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor1", "Effect": "Allow", "Action": [ "ram:AssociateResourceShare", "ram:DisassociateResourceShare", "ram:GetResourceShares" ], "Resource": "*", "Condition": { "StringLike": { "ram:ResourceShareName": "LakeFormation*" } } } ] }

启用新版本

按照以下步骤通过AmazonLake Formation控制台或更新跨账户版本设置Amazon CLI。

Console
  1. 数据目录设置页面的跨账户版本设置下选择版本 2 或版本 3。如果您选择版本 1,Lake Formation 将使用默认的资源共享模式。

  2. 选择保存

Amazon Command Line Interface (Amazon CLI)

使用put-data-lake-settingsAmazon CLI命令设置CROSS_ACCOUNT_VERSION参数。可接受的值为 1、2 和 3。

aws lakeformation put-data-lake-settings --region us-east-1 --data-lake-settings file://settings { "DataLakeAdmins": [ { "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/test" } ], "CreateDatabaseDefaultPermissions": [], "CreateTableDefaultPermissions": [], "Parameters": { "CROSS_ACCOUNT_VERSION": "3" } }
重要

选择版本 2 或版本 3 后,所有新的命名资源授权都将通过新的跨账户授予模式。为了以最佳方式使用现有跨账户共享的Amazon RAM容量,我们建议您撤销使用旧版本发放的授权,并在新模式下重新授予。