

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

# 通过以下方式授权连接AWS Lake Formation
<a name="lake-formation"></a>


|  | 
| --- |
|  适用于：企业版  | 


|  | 
| --- |
|    目标受众：系统管理员  | 

如果您使用查询数据Amazon Athena，则可以使用AWS Lake Formation来简化从 Amazon Quick Sight 保护和连接数据的方式。Lake Formation 提供了自己的权限模型，该模型适用于AWS分析和机器学习服务，从而增加了AWS Identity and Access Management(IAM) 权限模型。这种集中定义的权限模型通过简单的授予和撤销机制以精细级别控制数据访问权限。您可以使用 Lake Formation 来代替或补充使用 IAM 的范围缩小策略。

设置 Lake Formation 时，您需要注册数据来源，使其能够将数据移动到 Amazon S3 中的新数据湖。Lake Formation 和 Athena 都可以与AWS Glue Data Catalog无缝协作，因此组合使用非常容易。Athena 数据库和表是元数据容器。这些容器描述了数据的底层架构、数据定义语言（DDL）语句以及数据在 Amazon S3 中的位置。

下图显示了所涉及AWS服务的关系。

![架构图显示了从 Amazon AWS Glue Data CatalogAmazon Athena到 Amazon 的数据流 QuickSight，IAM以及对 S3 数据湖存储的AWS Lake Formation管理权限。](http://docs.aws.amazon.com/zh_cn/quick/latest/userguide/images/lake-formation-architecture-drawing-1.png)


配置 Lake Formation 后，您可以使用 Amazon Quick 按名称或通过 SQL 查询访问数据库和表。Amazon Quick 提供了一个功能齐全的编辑器，您可以在其中编写 SQL 查询。或者你可以使用 Athena 控制台、或你AWS CLI最喜欢的查询编辑器。有关更多信息，请参阅《Amazon Athena 用户指南》**中的[访问 Athena](https://docs.aws.amazon.com/athena/latest/ug/accessing-ate.html)。

使用以下主题通过 Lake Formation 或 Amazon Quick 配置 Lake Formation 连接。

**Topics**
+ [启用来自 Lake Formation 的连接](#lake-formation-lf-steps)
+ [启用来自 Amazon Quick 的连接](#lake-formation-qs-steps)

## 启用来自 Lake Formation 的连接
<a name="lake-formation-lf-steps"></a>

在开始将此解决方案与 Quick 配合使用之前，请确保您可以使用带有 Lake Formation 的 Athena 来访问您的数据。在您确认连接是否通过 Athena 正常运行后，您只需验证 Amazon Quick 是否可以连接到 Athena。这样做意味着您不必同时对所有三种产品的连接进行问题排查。测试连接的一种简单方法是使用 [Athena 查询控制台](https://console.aws.amazon.com/athena/)运行简单的 SQL 命令，例如 `SELECT 1 FROM table`。

要设置 Lake Formation，负责其工作的人员或团队需要访问权限才能创建新的 IAM 角色和 Lake Formation。他们还需要以下列表中显示的信息。有关更多信息，请参阅《AWS Lake Formation Developer Guide》**中的 [Setting up lake formation](https://docs.aws.amazon.com/lake-formation/latest/dg/getting-started-setup.html)。
+ 收集需要访问 Lake Formation 中数据的快速用户和群组的亚马逊资源名称 (ARN)。这些用户应该是 Amazon Quick 的作者或管理员。

**查找 Amazon Quick 用户和群组 ARN**

  1. 使用查找 Amazon Quick 作者和管理员的用户 ARN。AWS CLI为此，请在终端（Linux 或 Mac）或命令提示符（Windows）上运行以下 `list-users` 命令。

     ```
     aws quicksight list-users --aws-account-id {{111122223333}} --namespace default --region {{us-east-1}}
     ```

     响应返回每个用户的信息。在以下示例中，我们以粗体显示 Amazon 资源名称（ARN）。

     ```
     RequestId: {{a27a4cef-4716-48c8-8d34-7d3196e76468}}
     Status: 200
     UserList:
     - Active: {{true}}
       Arn: arn:aws:quicksight:{{us-east-1}}:{{111122223333}}:user/default/{{SaanviSarkar}}
       Email: {{SaanviSarkar@example.com}}
       PrincipalId: federated/iam/{{AIDAJVCZOVSR3DESMJ7TA}}
       Role: {{ADMIN}}
       UserName: {{SaanviSarkar}}
     ```

     为避免使用AWS CLI，您可以手动为每个用户构建 ARN。

  1. （可选）在AWS CLI终端（Linux 或 Mac）或命令提示符 (Windows) 上运行以下`list-group`命令，使用查找 Amazon Quick 群组的 ARN。

     ```
     aws quicksight list-groups --aws-account-id {{111122223333}} --namespace default --region us-east-1
     ```

     响应返回每个组的信息。在以下示例中，ARN 以粗体显示。

     ```
     GroupList:
     - Arn: arn:aws:quicksight:us-east-1:{{111122223333}}:group/default/{{DataLake-Scorecard}}
       Description: {{Data Lake for CXO Balanced Scorecard}}
       GroupName: {{DataLake-Scorecard}}
       PrincipalId: group/{{d-90671c9c12/6f9083c2-8400-4389-8477-97ef05e3f7db}}
     RequestId: {{c1000198-18fa-4277-a1e2-02163288caf6}}
     Status: 200
     ```

     如果您没有 Amazon Quick 群组，请使用运行`create-group`命令AWS CLI来添加群组。目前无法通过 Amazon Quick 控制台执行此操作。有关更多信息，请参阅[在 Amazon Quick 中创建和管理群组](https://docs.aws.amazon.com/quicksight/latest/user/creating-quicksight-groups.html)。

     为避免使用AWS CLI，您可以手动为每个组构建 ARN。

## 启用来自 Amazon Quick 的连接
<a name="lake-formation-qs-steps"></a>

要使用 Lake Formation 和 Athena，请确保您AWS已在 Amazon Quick 中配置了资源权限：
+ 启用对 Amazon Athena 的访问权限。
+ 启用对 Amazon S3 中正确存储桶的访问权限。通常，在启用 Athena 时会启用对 S3 的访问权限。但是，由于您可以在该过程之外更改 S3 权限，因此最好分别对其进行验证。

有关如何在 Quick 中验证或更改AWS资源权限的信息，请参阅[允许自动发现AWS资源](https://docs.aws.amazon.com/quicksight/latest/user/autodiscover-aws-data-sources.html)和[访问数据源](https://docs.aws.amazon.com/quicksight/latest/user/access-to-aws-resources.html)。