使用 Lake Formation 管理对表或数据库的访问权限
在表存储桶与 AWS 分析服务集成后,Lake Formation 将管理对表的访问,并要求向每个 IAM 主体(用户或角色)授权对分析服务执行操作。Lake Formation 使用其自己的权限模型(Lake Formation 权限),该模型可以对数据目录资源进行精细的访问控制。
有关更多信息,请参阅《AWS Lake Formation Developer Guide》中的 Overview of Lake Formation permissions。
AWS Lake Formation 中有两种主要类型的权限:
-
元数据访问权限控制着在数据目录中创建、读取、更新和删除元数据数据库和表的能力。
-
基础数据访问权限控制着对数据目录资源指向的基础 Amazon S3 位置读取和写入数据的能力。
Lake Formation 结合使用自己的权限模型和 IAM 权限模型,来控制对数据目录资源和基础数据的访问权限:
-
为了使访问数据目录资源或基础数据的请求取得成功,请求必须通过由 IAM 和 Lake Formation 进行的权限检查。
-
IAM 权限控制对 Lake Formation 和 AWS Glue API 以及资源的访问权限,而 Lake Formation 权限控制对数据目录资源、Amazon S3 位置和基础数据的访问权限。
Lake Formation 权限仅适用于授予这些权限的区域,并且主体必须由数据湖管理员或其它具有必要权限的主体授权,才能获得 Lake Formation 权限。
注意
如果您是执行表存储桶集成的用户,则您已经拥有对表的 Lake Formation 权限。如果您是唯一将访问表的主体,则可以跳过此步骤。您只需向其它 IAM 主体授予对表的 Lake Formation 权限即可。这可让其它主体在运行查询时访问该表。有关更多信息,请参阅 授予对表或数据库的 Lake Formation 权限。
授予对表或数据库的 Lake Formation 权限
您可以通过 Lake Formation 控制台或 AWS CLI,向主体授予对表存储桶中表或数据库的 Lake Formation 权限。
注意
当您将对数据目录资源的 Lake Formation 权限授予外部账户或直接授予其他账户中的 IAM 主体时,Lake Formation 会使用 AWS Resource Access Manager (AWS RAM) 服务共享该资源。如果被授权者账户与授予者账户在同一个组织中,则被授权者立即可以使用共享资源。如果被授权者账户不在同一个组织中,则 AWS RAM 会向被授权者账户发送邀请,以便其接受或拒绝资源授权。然后,要使共享资源可用,被授权者账户中的数据湖管理员必须使用 AWS RAM 控制台或 AWS CLI 接受邀请。有关跨账户数据共享的更多信息,请参阅《AWS Lake Formation Developer Guide》中的 Cross-account data sharing in Lake Formation。