使用授予表权限Amazon CLI和命名的资源方法 - Amazon Lake Formation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

使用授予表权限Amazon CLI和命名的资源方法

您可以使用命名资源方法和Amazon Command Line Interface(Amazon CLI)。

使用授予表权限Amazon CLI

  • 运行grant-permissions命令,然后将表指定为资源。

例 — 在单个表格上授予-无过滤

以下示例授予SELECTALTER给用户datalake_user1在桌子上inventory在数据库中retail在Amazon账户 1111-2222-3333。

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT" "ALTER" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'
注意

如果你授予ALTER对具有基础数据位于注册位置的表的权限,请务必还将该位置的数据位置权限授予委托人。有关更多信息,请参阅 授予数据位置权限

例 — 使用 Grant 选项对所有表格进行授予-不过滤

下一个示例授予SELECT在数据库中的所有表上使用授予选项retail.

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT" --permissions-with-grant-option "SELECT" --resource '{ "Table": { "DatabaseName": "retail", "TableWildcard": {} } }'

例 — 使用简单的列筛选进行授予

下一个示例授予SELECT在表的列的子集上persons. 它使用简单的列过滤。

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT" --resource '{ "TableWithColumns": {"DatabaseName":"hr", "Name":"persons", "ColumnNames":["family_name", "given_name", "gender"]}}'

例 — 使用数据过滤器授予

此示例授予SELECTorders表并应用restrict-pharma筛选数据。

aws lakeformation grant-permissions --cli-input-json file://grant-params.json

以下是文件内容grant-params.json.

{ "Principal": {"DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/datalake_user1"}, "Resource": { "DataCellsFilter": { "TableCatalogId": "111122223333", "DatabaseName": "sales", "TableName": "orders", "Name": "restrict-pharma" } }, "Permissions": ["SELECT"], "PermissionsWithGrantOption": ["SELECT"] }