使用基于标签的访问控制共享数据 - AWS Lake Formation

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

使用基于标签的访问控制共享数据

AWS Lake Formation 基于标签的访问控制 (LF-TBAC) 是一种基于属性定义权限的授权策略。以下步骤说明如何使用 LF 标签授予跨账户权限。

需要在 producer/grantor 账户上进行设置
  1. 添加 LF 标签。

    1. 以数据湖管理员或 LF 标签创建者身份登录 Lake Formation 控制台。

    2. 在左侧导航栏中选择权限,然后选择 LF 标签和权限

    3. 选择添加 LF 标签

      有关创建 LF 标签的详细说明,请参阅创建 LF 标签

  2. 向您的账户或外部 and/or 账户中的 IAM 委托人授予 Describe Associate 权限 LF-Tag 键值对。

    LF 标签键值对授予权限,让主体可以查看 LF 标签并将其分配给 Data Catalog 资源(数据库、表和列)。

  3. 接下来,数据湖管理员或具有 Associate 权限的 IAM 主体可以将 LF 标签分配给数据库、表或列。有关更多信息,请参阅 将 LF 标签分配给数据目录资源

  4. 接下来,使用 LF 标签表达式向外部账户授予数据权限。通过这种方式,被授权者或权限的接收者能够访问使用相同键和值标记的 Data Catalog 资源。

    1. 在导航窗格中,选择权限数据权限

    2. 选择授权

    3. 如果是向外部主体进行直接的跨账户授予,则在授予权限页面上,对于主体,选择外部账户,然后输入被授权者 AWS 账户 ID 或主体的 IAM 角色或主体的 Amazon 资源名称(ARN)(主体 ARN)。输入账户 ID 后,您需要按 Enter 键。

      指定了外部账户和 LF 标签键值对的授予权限屏幕。
    4. 对于 LF 标签或目录资源,选择通过 LF 标签匹配的资源(推荐)

      1. 选择选项 LF 标签键值对已保存的 LF 标签表达式

      2. 如果您选择 LF 标签键值对,请输入与被授权者账户共享的 Data Catalog 资源关联的 LF 标签的键和值。

        被授权者将获得在 LF 标签表达式中分配了匹配 LF 标签的 Data Catalog 资源的权限。如果 LF 标签表达式为每个标签键指定多个值,则任何一个标签值都可以是匹配项。

    5. 选择要对与 LF 标签表达式匹配的资源授予的数据库级或表级权限。

      重要

      由于数据湖管理员必须向被授权者账户中的主体授予对共享资源的权限,因此必须始终使用授予选项授予跨账户权限。

      有关更多信息,请参阅 使用控制台授予 LF 标签权限

      注意

      对于获得直接跨账户授权的主体,将不提供可授予的权限选项。

需要在 receiving/grantee 账户上进行设置
  1. 以使用者账户的数据湖管理员身份登录 Lake Formation 控制台。

  2. 接下来,在使用者账户中接收资源共享。

    1. 打开控制 AWS RAM 台。

    2. 在导航窗格中的与我共享下面,选择资源共享

    3. 选择资源共享,选择接受资源共享

  3. 当您与其他账户共享资源时,该资源仍属于制作者账户,并且在 Athena 控制台中不可见。要使资源在 Athena 控制台中可见,您需要创建一个指向共享资源的资源链接。有关创建资源链接的说明,请参阅创建指向共享数据目录表的资源链接创建指向共享数据目录数据库的资源链接

    1. 选择 Data Catalog 下面的数据库

    2. 在 Databases/Tables 页面上,选择创建资源链接

    3. 为数据库资源链接输入以下信息:

      • 资源链接名称:资源链接的唯一名称。

      • 目标目录:您要在其中创建资源链接的目录。

      • 共享数据库区域:这是当您在另一个区域中创建资源链接时,要与您共享的数据库的区域。

      • 共享数据库:选择共享数据库。

      • 共享数据库的目录 ID:输入共享数据库的目录 ID。

    4. 选择创建。您可以在数据库列表中看到新创建的资源链接。

    同样,您可以创建指向共享表的资源链接。

  4. 现在,向正在共享资源的 IAM 主体授予对资源链接的 Describe 权限。

    1. 数据库/表页面上,选择资源链接,然后在操作菜单上选择授予

    2. 授予权限部分,选择 IAM 用户和角色

    3. 选择用于向资源链接授予访问权限的 IAM 角色。

    4. 资源链接权限部分,选择 Describe

    5. 选择授权

  5. 接下来,向使用者账户中的主体授予 LF 标签键值权限

    您应该能够在 Lake Formation 控制台的权限LF 标签和权限下面,在使用者账户中找到与您共享的 LF 标签。您可以将授权人共享的标签关联到从授权人账户共享的资源上,这些资源包括:数据库、表和列。您可以进一步向其他主体授予对这些资源的权限。

    显示了账户中 LF 标签的权限的屏幕。
    1. 在导航窗格中权限下的数据权限中,选择授予

    2. 授予权限页面上,选择 IAM 用户和角色

    3. 接下来,选择您账户中的 IAM 用户和角色以授予对共享数据库/表的访问权限。

    4. 接下来,在 LF 标签或目录资源中,选择通过 LF 标签匹配的资源

    5. 接下来,选择与您共享的 LF 标签的键和值。

    6. 接下来,选择要向 IAM 用户和角色授予的数据库和表权限。您也可以选择可授予的权限,让 IAM 用户和角色可以向其他用户/角色授予权限。

    7. 选择授权

    8. 您可以在 Lake Formation 控制台的数据权限下查看权限授予。