# 为LakeFormation角色授予操作Catalog的权限
#### 操作场景
在企业数据治理场景中，当需要统一管理多源数据权限时，传统方式往往面临权限配置复杂、粒度粗的问题。通过LakeFormation服务，您可以创建实例，并针对该实例下的所有授权类型（Catalog、数据库、数据表、函数、OBS路径），授予授权主体（用户组、角色、IAM用户、委托用户）细粒度的数据访问权限。
本入门提供从零开始创建LakeFormation实例及其Catalog元数据，并创建LakeFormation角色，对角色授予修改Catalog、创建数据库的权限。授权后，绑定该角色的用户将同时拥有该角色的权限。
#### 操作流程
开始使用如下样例前，请务必按[准备工作]指导完成必要操作。
1. [创建LakeFormation实例]：创建一个独享型LakeFormation实例。
2. [创建存储元数据的OBS路径]：创建用于存储元数据的OBS路径。
3. [创建Catalog]：创建一个名称为"catalog1"的Catalog。
4. [创建LakeFormation角色]：创建一个名为"lakeformation_role"的角色，并为当前用户绑定该角色。
5. [为角色授予操作Catalog的权限]：为"lakeformation_role"授予"catalog1"的修改、创建数据库的权限。
 
 #### 准备工作
已准备用于创建并操作LakeFormation的用户。
- 注册账号并实名认证。 在创建LakeFormation实例之前，请先[注册华为账号并开通华为云](https://support.huaweicloud.com/usermanual-account/account_id_001.html)，进行[实名认证](https://support.huaweicloud.com/usermanual-account/zh-cn_topic_0071343161.html)。
  如果您已开通华为云并进行实名认证，请忽略此步骤。
  
- 已准备具有创建LakeFormation实例权限的IAM用户，详细操作请参见[创建IAM用户并授权使用LakeFormation](https://support.huaweicloud.com/usermanual-lakeformation/lakeformation_03_00004.html)。
 
 #### 步骤一：创建LakeFormation实例
1. 使用已准备的用户登录[LakeFormation管理控制台](https://console.huaweicloud.com/lake-formation/)。
2. 在"服务授权"页面，勾选"同意LakeFormation服务声明"，单击"同意授权"，完成服务授权。 
   如果已授权则跳过该步骤。
   
   
3. 单击总览页面右上角"立即购买"或"购买实例"，进入购买实例页面。 
   首次创建实例时界面显示"立即购买"，如果界面已有LakeFormation实例则显示为"购买实例"。
   
   
4. 按照需求配置以下参数。 
   表1创建LakeFormation实例参数配置 
   | 参数     | 样例                     | 参数说明                                                                                                                                                                                                                                                                                                                                  |
   |:---|:---|:---|
   | 类型      | 独享                     | 选择实例类型。 - 共享  - 独享   |
   | 计费模式  | 按需收费                 | 实例的计费模式。                                                                                                                                                                                                                                                                                                                                   |
   | 项目   | *xxx*               | 选择实例所属的项目。                                                                                                                                                                                                                                                                                                                            |
   | 名称  | lakeformation-test | 自定义LakeFormation实例名称。                                                                                                                                                                                                                                                                                                                 |
   | QPS   | 10000                | 每秒最大请求数。如果"实例类型"为"共享型"，则无需配置该参数。                                                                                                                                                                                                                                                                                                     |
   | 企业项目 | *xxx*                | 选择实例所属的企业项目。如果当前无可用企业项目，可以单击"新建企业项目"进行创建。                                                                                                                                                                                                                                                                                              |
   | 描述  | -                    | 当前实例的描述信息。                                                                                                                                                                                                                                                                                                                             |
   | 标签  | -                   | 在标签键/值输入框输入内容后单击"添加"，即可添加标签。                                                                                                                                                                                                                                                                                                         |
      
   
   
5. 单击"立即购买"，确认配置的相关信息并支付。
6. 单击"返回控制台"，在控制台即可查看新创建的LakeFormation实例信息。 
   ![](https://support.huaweicloud.com/qs-lakeformation/public_sys-resources/note_3.0-zh-cn.png)
   创建实例时需要注意配额提醒。当资源配额不足时，建议按照界面提示申请足够的资源，再创建实例。
   等待实例状态变为"运行中"，表示实例已创建成功。
   
   
 
 #### 步骤二：创建存储元数据的OBS路径
1. 登录[OBS管理控制台](https://console.huaweicloud.com/obs/)。
2. 选择"并行文件系统 \> 创建并行文件系统"，进入创建页面，配置相关参数后单击"立即创建"。 
   - 文件系统名称：根据界面要求设置并行文件系统名称，例如"lakeformation-test"。
   
   - 其他参数根据实际情况选择。
   
   
   
   
3. 在并行文件系统页面，单击已创建的文件系统名称，例如"lakeformation-test"。
4. 在左侧导航栏选择"文件"，单击"新建文件夹"，填写待创建的文件夹名称，单击"确定"。继续单击该文件夹名称，单击"新建文件夹"，可以创建其子文件夹。 
   参考该步骤，依次创建用于存放元数据的路径，例如：
   Catalog存储路径：lakeformation-test/catalog1
   
   
 
 #### 步骤三：创建Catalog
1. 登录[LakeFormation管理控制台](https://console.huaweicloud.com/lake-formation/)。
2. 在左侧下拉框中选择已创建的LakeFormation实例（例如lakeformation-test），在左侧导航栏选择"数据目录"。
3. 单击"创建"，参考下表配置相关参数，其他参数保持默认，单击"提交"。 
   表2创建Catalog 
   | 参数       | 样例                              | 参数说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
   |:---|:---|:---|
   | Catalog名称 | catalog1                         | 填写待创建Catalog名称。 只能包含字母、数字和下划线，长度为1\~256个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   | Catalog类型  | DEFAULT                          | 选择Catalog类型。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
   | 选择位置      | obs://lakeformation-test/catalog1 | Catalog数据存储在OBS中的位置。可选参数。 单击"![](https://support.huaweicloud.com/qs-lakeformation/zh-cn_image_0000002203741416.png)"，根据实际需要选择"并行文件系统"或"对象存储桶"，选择位置后，单击"确定"。 - 如果配置该参数，则所选位置只能以"obs://"开头，且必须包含一个存储对象，例如选择"obs://lakeformation-test/catalog1"。如果没有合适的OBS路径，可以单击"前往OBS创建"参考[步骤二：创建存储元数据的OBS路径](https://support.huaweicloud.com/qs-lakeformation/lakeformation_02_0001.html#lakeformation_02_0001__section7909203211276)进行创建。  - 该路径不能与其他LakeFormation实例元数据存储路径重复，以免造成数据冲突。  - 建议选择未被其他Catalog选中的文件夹。   |
   | 描述       | *xxx*                            | 所创建Catalog的描述信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
      
   
   
4. 创建完成后，单击Catalog名称即可查看相关信息。
 
 #### 步骤四：创建LakeFormation角色
1. 登录[LakeFormation管理控制台](https://console.huaweicloud.com/lake-formation/)。
2. 在左侧下拉框中选择待操作的LakeFormation实例，选择"数据权限 \> 角色"。
3. 单击"创建角色"，填写角色名称，例如"lakeformation_role"，单击"确定"。
4. 在新创建的角色所在行，单击操作列的"添加IAM用户"，在下拉框中选择待绑定的用户，例如选择[准备工作]中准备的用户，单击"确定"。
 
 #### 步骤五：为角色授予操作Catalog的权限
1. 登录[LakeFormation管理控制台](https://console.huaweicloud.com/lake-formation/)。
2. 在左侧下拉框中选择待操作的LakeFormation实例，选择"数据权限 \> 数据授权"。
3. 单击"授权"，在弹出的窗口中参考下表配置参数后，单击"确定"。 
   表3元数据权限授权 
   | 参数     | 样例                    | 参数说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
   |:---|:---|:---|
   | 主体类型   | 角色                    | 待授权的主体类型。取值范围： - 用户组  - 角色  - IAM用户  - 委托用户                                                                                                                                                                                                                                                                                                                      |
   | 选择角色  | lakeformation_role      | 选择待授权的主体名称。名称中不能包含中划线（-），否则可能造成操作失败。 该参数名称与选择的"主体类型"有关。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
   | 授权类型   | 资源                   | - 资源：表示对LakeFormation实例中的资源进行授权。  - 路径：表示对OBS路径进行授权。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
   | Catalog | catalog1               | 选择待授权的"Catalog"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
   | 操作类型      | ALTER、CREATE_DATABASE | 选择授权的操作类型。不同的授权类型对应的操作类型不同。Catalog支持的操作类型如下： - ALL：Catalog的所有操作权限。  - ALTER：修改Catalog。  - CREATE_DATABASE：创建数据库。  - DROP：删除Catalog。  - DESCRIBE：查看Catalog的元数据信息或切换Catalog。  - LIST_DATABASE：查看Catalog下资源列表。   |
   | 赋予授权权限  | -                     | 是否授予授权权限。 赋予授权权限后，授权主体便拥有将对象授权其他授权主体的权限。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
      
   
   
 
