本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
授予数据位置权限(外部账户)
按照以下步骤向外部 Amazon 账户或组织授予数据定位权限。
你可以使用 Lake Formation 控制台API、或 Amazon Command Line Interface (Amazon CLI) 来授予权限。
开始前的准备工作
确保满足所有跨账户访问先决条件。有关更多信息,请参阅 先决条件。
授予数据位置权限(外部账户,使用控制台)
-
打开 Amazon Lake Formation 控制台,网址为https://console.aws.amazon.com/lakeformation/
。以数据湖管理员身份登录。 -
在导航窗格的 “权限” 下,选择 “数据位置”,然后选择 “授予”。
-
在授予权限对话框中,选择外部账户磁贴。
-
提供以下信息:
-
对于Amazon 账户 ID 或 Amazon 组织 ID,请输入有效的 Amazon 账号IDs、组织或组织单位IDs。
在每个 ID 后按 Enter。
组织 ID 由“o-”后跟 10 到 32 个小写字母或数字组成。
组织单位 ID 由“ou-”后跟 4 到 32 个小写字母或数字(包含 OU 的根的 ID)组成。此字符串后跟第二个“-”(连字符)和 8 到 32 个额外的小写字母或数字。
-
在存储位置下,选择浏览,然后选择一个 Amazon Simple Storage Service (Amazon S3) 存储位置。该位置必须在 Lake Formation 中注册。
-
-
选择可授予。
-
选择授权。
要授予数据位置权限(外部账户, Amazon CLI)
-
要向外部 Amazon 账户授予权限,请输入类似于以下内容的命令。
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=111122223333 --permissions "DATA_LOCATION_ACCESS" --permissions-with-grant-option "DATA_LOCATION_ACCESS" --resource '{ "DataLocation": {"CatalogId":"123456789012","ResourceArn":"arn:aws:s3::retail/transactions/2020q1"}}'
此命令使用授予选项向账户 1111-2222-3333 授予对 Amazon S3 位置
s3://retail/transactions/2020q1
的DATA_LOCATION_ACCESS
权限,该位置由账户 1234-5678-9012 拥有。要向组织授予权限,请输入类似如下的命令。
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:organizations::111122223333:organization/o-abcdefghijkl --permissions "DATA_LOCATION_ACCESS" --permissions-with-grant-option "DATA_LOCATION_ACCESS" --resource '{"DataLocation": {"CatalogId":"123456789012","ResourceArn":"arn:aws:s3::retail/transactions/2020q1"}}'
此命令使用授予选项向组织
o-abcdefghijkl
授予对 Amazon S3 位置s3://retail/transactions/2020q1
的DATA_LOCATION_ACCESS
权限,该位置由账户 1234-5678-9012 拥有。要向外部 Amazon 账户中的委托人授予权限,请输入类似于以下内容的命令。
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DATA_LOCATION_ACCESS" --resource '{ "DataLocation": {"ResourceArn":"arn:aws:s3::retail/transactions/2020q1", "CatalogId": "123456789012"}}'
此命令使用授予选项向账户 1111-2222-3333 中的主体授予对 Amazon S3 位置
s3://retail/transactions/2020q1
的DATA_LOCATION_ACCESS
权限,该位置由账户 1234-5678-9012 拥有。以下示例向外部账户中的
ALLIAMPrincipals
组授予对s3://retail
的数据位置权限。aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=111122223333:IAMPrincipals --permissions "DATA_LOCATION_ACCESS" --resource '{ "DataLocation": {"ResourceArn":"arn:aws:s3:::retail", "CatalogId": "123456789012"}}'