更新时间:2024-11-07 GMT+08:00

新增授权

用户可通过LakeFormation管理控制台对数据湖内的资源进行统一权限管理,针对不同的授权主体进行授权。

在进行授权前,需确认待授权主体已存在,例如IAM用户组已提前创建。

用户可通过LakeFormation管理控制台对数据湖内的资源进行统一权限管理,对于IAM用户/用户组,也可以通过关联LakeFormation服务的细粒度权限策略进行特性权限场景的授权,参见创建LakeFormation自定义IAM策略。当湖内数据资源较多时,建议通过LakeFormation管理控制台对数据湖内的资源进行统一权限管理。

统一添加授权策略

  1. 登录管理控制台。
  2. 在左上角单击“”,选择“大数据 > 湖仓构建 LakeFormation”进入LakeFormation控制台。
  3. 在左侧下拉框中选择待操作的LakeFormation实例,选择“数据权限 > 数据授权”。
  4. 单击“授权”,在弹出的窗口中参考下表配置参数后,单击“确定”。

    • 主体类型(用户组、角色、IAM用户、委托用户)名称中不能包含中划线(-),否则可能造成操作失败。
    • 对单表授权权限策略数量不超过256个。
    表1 元数据权限授权

    参数

    参数说明

    主体类型

    • 用户组:选择待授权的用户组,例如IAM用户组,可提前到IAM服务管理控制台创建。
    • 角色:选择待授权的角色。可提前参考创建角色并绑定用户章节创建角色。
    • IAM用户:选择待授权的IAM用户。
    • 委托用户:选择待授权的委托用户。

    授权类型

    • 资源:表示对LakeFormation实例中的资源进行授权。
    • 路径:表示对OBS文件系统中的路径进行授权。该授权类型用于给外表或函数授权。

    资源类型

    选择待授权资源类型。“授权类型”选择“资源”时配置该参数。

    并需要根据实际需求选择待授权的“Catalog”、“数据库”、“表”、“列”、“函数”。

    说明:

    为表授予“SELECT”权限时,需要同时选择列,例如设置“列”为“*”。

    行过滤条件

    为权限策略设置行过滤条件。资源类型为“表”、“列”时显示该参数。

    • 设置格式为:列名 操作符 列值

      支持使用=、<=、<、>、>=、like等格式。

      例如行过滤条件设置为:department = "financial",表示选择表中“department”列中值为“financial”的行内容。

    • 设置行过滤条件后,操作类型仅可以选择“SELECT”。

    列脱敏类型

    选择列脱敏类型,对列数据进行脱敏处理。资源类型为“列”时显示该参数。

    • PARTIAL_MASK:遮掩部分数据。
    • REDACT:修订原有列的数据。
    • HASH:使用哈希算法加密。
    • NULLIFY:用NULL值替换原值。
    • UNMASKED:原样显示。
    • DATA_ONLY_SHOW_YEAR:仅显示日期字符串的年份部分。
    • CUSTOM:用户自定义脱敏规则。
    说明:
    • 设置列脱敏规则后,操作类型仅可以选择“SELECT”。
    • LakeFormation仅提供动态脱敏策略管理与获取功能。LakeFormation不处理动态脱敏策略冲突。

    列脱敏参数

    列脱敏类型对应的选项。可以参考表2进行配置。资源类型为“列”时显示该参数。

    路径

    “授权类型”选择“路径”时配置该参数。

    单击选择授权的OBS文件系统中的路径。可以选择多个路径,但不能超过10个。

    操作类型

    选择授权的操作类型。不同的授权类型对应的操作类型不同,详见表2

    赋予授权权限

    是否授予授权权限。

    赋予授权权限后,授权主体便拥有将对象授权其他授权主体的权限。

    表2 列脱敏参数说明

    列脱敏类型

    列脱敏参数(示例)

    脱敏描述

    PARTIAL_MASK

    show last 4

    只显示最后四个字符数据,例如“*******1234”。

    show first 4

    只显示最前四个字符数据,例如“1234*******”。

    REDACT

    #

    用#修订原来列的数据,例如“###########”。

    *

    用*修订原来列的数据,例如“***********”。

    HASH

    hash256

    使用hash256算法加密列中的数据。

    NULLIFY

    用NULL值替换原值。

    UNMASKED

    原样显示。

    DATA_ONLY_SHOW_YEAR

    仅显示日期字符串的年份部分。

    CUSTOM

    自定义

    用户自定义脱敏规则。

  5. 如果需要取消授权,单击“操作”列中的“取消授权”,单击“确认”。

    取消授权后则无法恢复,请谨慎操作。

    如果需要修改行过滤条件,单击“操作”列中的“更多”按钮,单击“编辑行过滤条件”。仅配置了行过滤条件时支持操作。

    如果需要修改列脱敏配置,单击“操作”列中的“更多”按钮,单击“编辑列脱敏参数”。仅配置了列脱敏时支持操作。

为指定资源添加授权

用户可基于数据湖资源视角,为指定的某个资源(数据库、表)添加授权。

  1. 登录管理控制台。
  2. 在左上角单击“”,选择“大数据 > 湖仓构建 LakeFormation”进入LakeFormation控制台。
  3. 在左侧下拉框中选择待操作的LakeFormation实例。
  4. 进入指定资源的授权界面。

    • Catalog:在左侧导航栏选择“元数据 > Catalog”,选择待授权Catalog“操作”列的“更多 > 授权”。
    • 数据库:在左侧导航栏选择“元数据 > 数据库”,在右上角“Catalog”后的下拉框中选择待授权数据库所属的Catalog名称,选择待授权数据库“操作”列的“更多 > 授权”。
    • 数据表:在左侧导航栏选择“元数据 > 表”,在右上角“Catalog”和“数据库”后的下拉框中分别选择待授权数据表所属的Catalog、数据库的名称,单击待授权数据表“操作”列的“授权”。
    • 函数:在左侧导航栏选择“元数据 > 函数”,在右上角“Catalog”和“数据库”后的下拉框中分别选择待授权函数所属的Catalog、数据库的名称,单击待操作函数“操作”列的“授权”。

  5. 参考表1配置相关信息后,单击“确定”。
  6. 在“数据权限 > 数据授权”界面即可查看已授权的相关信息。

    授权完成后,所选用户组中的用户、或拥有所选角色的用户或者用户组即可对当前数据库进行相关操作。