授予或撤销 Lake Formation 权限所需的 IAM 权限 - Amazon Lake Formation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

授予或撤销 Lake Formation 权限所需的 IAM 权限

所有主体(包括数据湖管理员)都需要以下 Amazon Identity and Access Management (IAM) 权限才能使用 Lake Formation API 或 Amazon CLI 授予或者撤销 Amazon Lake Formation 数据目录权限或数据位置权限:

  • lakeformation:GrantPermissions

  • lakeformation:BatchGrantPermissions

  • lakeformation:RevokePermissions

  • lakeformation:BatchRevokePermissions

  • glue:GetTableglue:GetDatabase,用于使用命名资源方法授予权限的表或数据库。

注意

数据湖管理员具有隐式 Lake Formation 权限,可以授予和撤销 Lake Formation 权限。但是他们仍然需要对 Lake Formation 授予和撤销 API 操作的 IAM 权限。

具有 AWSLakeFormationDataAdmin Amazon 托管式策略的 IAM 角色无法添加新的数据湖管理员,因为此策略包含对 Lake Formation API 操作 PutDataLakeSetting 的显式拒绝。

对于非数据湖管理员且想要使用 Lake Formation 控制台授予或撤销权限的主体,建议使用以下 IAM 策略。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lakeformation:ListPermissions", "lakeformation:GrantPermissions", "lakeformation:BatchGrantPermissions", "lakeformation:RevokePermissions", "lakeformation:BatchRevokePermissions", "glue:GetDatabases", "glue:SearchTables", "glue:GetTables", "glue:GetDatabase", "glue:GetTable", "iam:ListUsers", "iam:ListRoles", "sso-directory:DescribeUser", "sso-directory:DescribeGroup", "sso:DescribeInstance" ], "Resource": "*" } ] }

此策略中的所有 glue:iam: 权限均可在 Amazon 托管式策略 AWSGlueConsoleFullAccess 中使用。

要使用 Lake Formation 基于标签的访问控制 (LF-TBAC) 授予权限,主体需要额外的 IAM 权限。有关更多信息,请参阅 Lake Formation 基于标签的访问控制最佳实践和注意事项Lake Formation 角色和 IAM 权限参考

跨账户权限

想要使用命名资源方法授予跨账户 Lake Formation 权限的用户还必须具有 AWSLakeFormationCrossAccountManager Amazon 托管式策略中的权限。

数据湖管理员需要相同的权限才能授予跨账户权限,还需要 Amazon Resource Access Manager (Amazon RAM) 权限才能允许向组织授予权限。有关更多信息,请参阅数据湖管理员权限

管理用户

具有管理权限(例如采用 AdministratorAccess Amazon 托管式策略)的主体有权授予 Lake Formation 权限和创建数据湖管理员。要拒绝用户或角色访问 Lake Formation 管理员操作,请在其策略中附加或添加管理员 API 操作的 Deny 语句。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "lakeformation:GetDataLakeSettings", "lakeformation:PutDataLakeSettings" ], "Effect": "Deny", "Resource": [ "*" ] } ] }
重要

要防止用户使用提取、转换和加载 (ETL) 脚本将自己添加为管理员,请确保拒绝所有非管理员用户和角色访问这些 API 操作。AWSLakeFormationDataAdmin Amazon 托管式策略包含对 Lake Formation API 操作 PutDataLakeSetting 的显式拒绝,该操作可阻止用户添加新的数据湖管理员。