本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
授予对与您的账户共享的数据位置的权限
与您的 AWS 账户共享数据目录资源后,作为数据湖管理员,您可以向账户中的其他委托人授予该资源的权限。如果授予了对共享表的 ALTER
权限,并且该表指向已注册的 Amazon S3 位置,则您还必须授予对该位置的数据位置权限。同样,如果对共享数据库授予了 CREATE_TABLE
或 ALTER
权限,并且该数据库具有指向已注册位置的位置属性,则您还必须授予对该位置的数据位置权限。
要向您账户中的主体授予对共享位置的数据位置权限,您的账户必须已通过授予选项被授予对该位置的 DATA_LOCATION_ACCESS
权限。然后,当您DATA_LOCATION_ACCESS
向账户中的其他委托人授予资金时,必须包括所有者AWS 账户的数据目录 ID(账户 ID)。拥有者账户是注册了该位置的账户。
您可以使用 AWS Lake Formation 控制台API、或 AWS Command Line Interface (AWS CLI 来授予数据位置权限。
授予对与您的账户共享的数据位置的权限(控制台)
-
按照授予数据位置权限(同一账户)中的步骤操作。
对于存储位置,必须键入存储位置。在注册账户位置中,输入所有者 AWS 账户的账户 ID。
授予对与您的账户共享的数据位置的权限 (AWS CLI)
-
输入以下命令之一以向用户或角色授予权限。
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::
<account-id>
:user/<user-name>
--permissions "DATA_LOCATION_ACCESS" --resource '{ "DataLocation": {"CatalogId":"<owner-account-ID>
","ResourceArn":"arn:aws:s3:::<s3-location>
"}}' aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>
:role/<role-name>
--permissions "DATA_LOCATION_ACCESS" --resource '{ "DataLocation": {"CatalogId":"<owner-account-ID>
","ResourceArn":"arn:aws:s3:::<s3-location>
"}}'