

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

# 使用基于标签的访问控制共享数据
<a name="cross-account-TBAC"></a>

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

**需要在 producer/grantor 账户上进行设置**

1. 添加 LF-Tags。

   1. 以数据湖管理员或创建者的身份登录 Lake Form LF-Tag ation 控制台。

   1. 在左侧导航栏中，选择 “**权限**” **LF-Tags 和 “权限”**。

   1. 选择**添加 LF-Tag**。

      有关创建的详细说明 LF-Tags，请参阅[正在创建 LF-Tags](TBAC-creating-tags.md)。

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

   授予**LF-Tag 键值**对的权限使委托人能够查看数据目录资源（数据库 LF-Tags、表和列）并将其分配给数据目录资源。

1. **接下来，数据湖管理员或具有 Associate 权限的 IAM 委托人可以将它们分配 LF-Tag 给数据库、表或列。**有关更多信息，请参阅 [分配 LF-Tags 给数据目录资源](TBAC-assigning-tags.md)。

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

   1. 在导航窗格中，选择**权限**和**数据权限**。

   1. 选择**授权**。

   1. 如果是向外部主体进行直接的跨账户授予，则在**授予权限**页面上，对于**主体**，选择**外部账户**，然后输入被授权者 AWS 账户 ID 或主体的 IAM 角色或主体的 Amazon 资源名称（ARN）（主体 ARN）。输入账户 ID 后，您需要按 **Enter** 键。  
![指定外部账户和 LF-Tag 键值对的授予权限屏幕。](https://docs.aws.amazon.com/zh_cn/lake-formation/latest/dg/images/cross-acct-grant-tags.png)

   1. 对于**LF-Tags 或目录资源**，请选择**匹配者 LF-Tags （推荐）的资源**。

      1. 选择 “**LF-Tag 键值对**” 或 “**已保存 LF-Tag **的表达式” 选项。

      1. **如果您选择**LF-Tag 键值对**，请输入与被授权者账户共享的数据目录资源关联的键和值**。**LF-Tag**

         被授权者被授予对在 LF-Tag 表达式 LF-Tag 中分配了匹配项的数据目录资源的权限。如果 LF-Tag 表达式为每个标签键指定多个值，则任何一个标签值都可以匹配。

   1. 选择要授予与表达式匹配的资源的数据库级或表级权限。 LF-Tag 
**重要**  
由于数据湖管理员必须向被授权者账户中的主体授予对共享资源的权限，因此必须始终使用授予选项授予跨账户权限。

      有关更多信息，请参阅 [使用控制台授予 LF-Tag 权限](TBAC-granting-tags-console.md)。
**注意**  
对于获得直接跨账户授权的主体，将不提供**可授予的权限**选项。

**需要在 receiving/grantee 账户上进行设置**

1. 以使用者账户的数据湖管理员身份登录 Lake Formation 控制台。

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

   1.  打开控制 AWS RAM 台。

   1.  在导航窗格中的**与我共享**下面，选择**资源共享**。

   1.  选择资源共享，选择**接受资源共享**。

1. 当您与其他账户共享资源时，该资源仍属于制作者账户，并且在 Athena 控制台中不可见。要使资源在 Athena 控制台中可见，您需要创建一个指向共享资源的资源链接。有关创建资源链接的说明，请参阅[创建指向共享数据目录表的资源链接](create-resource-link-table.md)和[创建指向共享数据目录数据库的资源链接](create-resource-link-database.md)

   1.  选择 Data Catalog 下面的**数据库**或**表**。

   1. 在 Databases/Tables 页面上，选择**创建**，**资源链接**。

   1. 为数据库资源链接输入以下信息：
      + **资源链接名称**：资源链接的唯一名称。
      + **目标目录**：您要在其中创建资源链接的目录。
      + **共享数据库区域**：这是当您在另一个区域中创建资源链接时，要与您共享的数据库的区域。
      + **共享数据库**：选择共享数据库。
      + **共享数据库的目录 ID**：输入共享数据库的目录 ID。

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

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

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

   1. 在**Databases/Tables**页面上，选择资源链接，然后在 “**操作**” 菜单上选择 “**授权**”。

   1. 在**授予权限**部分，选择 **IAM 用户和角色**。

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

   1. 在**资源链接权限**部分，选择 **Describe**。

   1. 选择**授权**。

1. 接下来，向**LF-Tag 消费者账户中的委托人授予键值权限**。

   您应该能够在 Lake LF-Tags Formation 控制台的消费者账户的 “权限**LF-Tags和**权限**” 下找到与您共享的内容**。您可以将授权人共享的标签关联到从授权人账户共享的资源上，这些资源包括：数据库、表和列。您可以进一步向其他主体授予对这些资源的权限。  
![屏幕显示账户 LF-Tags 中的权限。](https://docs.aws.amazon.com/zh_cn/lake-formation/latest/dg/images/lf-tag-permissions.png)

   1.  在导航窗格中**权限**下的**数据权限**中，选择**授予**。

   1.  在**授予权限**页面上，选择 **IAM 用户和角色**。

   1. 接下来，选择账户中的 IAM 用户和角色以授予对共享的访问权限 databases/tables。

   1. 接下来，对于**LF-Tags 或目录资源**，选择**匹配的资源 LF-Tags**。

   1.  接下来，选择与您共享 LF-Tag 的密钥和值。

   1.  接下来，选择要向 IAM 用户和角色授予的数据库和表权限。您也可以选择允许IAM用户和角色向其他 users/roles用户和角色**授予权限的可**授予权限。

   1.  选择**授权**。

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