You need to enable JavaScript to run this app.
文档中心
文档控制台
注册
复制全文
下载 pdf
数据安全与审计
数据动态脱敏
复制全文
下载 pdf
数据动态脱敏

LAS 为您提供 Catalog 表添加列掩码的功能,当数据包含敏感信息、需要避免查询时暴露底层原始数据时,您可以创建列掩码脱敏函数,通过绑定列掩码功能将函数绑定到需要脱敏的列上,实现列数据动态脱敏处理。本位将为您介绍利用 LAS Catalog 函数功能实现数据动态脱敏的方法和操作步骤。

背景信息

实现数据动态脱敏主要依赖LAS Catalog的函数-高级参数、Catalog表绑定列掩码功能。您需要:

  1. 基于业务数据脱敏需要,规划好需要脱敏的字段、脱敏策略,在 LAS Catalog 中创建一个函数,可通过高级参数添加需要表字段变量,作为函数默认输入,便于在脱敏函数中引用。
  2. 将函数作为列掩码函数,绑定到指定列。
  3. 配置完成后,后续用户查询数据时,会自动触发列掩码绑定的函数,根据函数中的脱敏策略,对需要脱敏的字段进行脱敏,返回最终脱敏结果。

使用限制
  • 仅 Hive UDF 支持动态脱敏。
  • 当前非分区字段支持本文的动态脱敏方案,分区字段暂不支持。
  • 进行以下操作时,您需要有函数的EXECUTE权限、表的owner或alter权限。

    说明

    配置权限后,通常需要一段时间配置结果才能生效,如果授权后依旧有权限问题,可能是因为权限配置还未生效,尤其在对“用户组”进行批量授权时,权限生效时间可能会比较长,请您耐心等待。

操作步骤

准备工作

在开始配置操作前,您需要先梳理业务数据现状,规划好待脱敏的表、表字段、不同表字段的脱敏规则是什么,将规划好的脱敏规则整理为函数处理的JAR包资源,上传至 TOS 中,便于后续在创建 LAS Catalog 函数时,引用对应脱敏逻辑的 JAR 包。

step1:创建函数

  1. 登录 LAS 控制台,在 元数据 > 目标数据库 > 函数页面,点击 创建函数,进入创建函数界面。

  2. 在 创建函数 **** 页面,填写用户自定义函数的基本信息、资源包信息,其中资源包信息来自用户上传到 TOS 存储桶的数据脱敏处理代码包。数据脱敏处理代码包由用户根据数据特征和脱敏策略编写,编写完成后,将代码打包为 jar 文件。

  3. 在 高级参数配置 区域,配置参数及其来源后,系统会在执行列掩码函数时自动按配置补充参数,支持按行添加参数。

    参数

    说明

    参数名称

    参数的名称,由用户自定义。

    注意

    填写时需满足:
    参数顺序必须与 UDF(用户自定义函数)输入参数顺序 保持一致。
    参数名称必须与 Hive 函数中定义的参数名称 完全一致,并且 区分大小写

    参数来源

    函数的输入参数来源,下拉选择。支持选择:

    • 当前 Catalog
    • 当前库名
    • 当前表名
    • 当前列名
    • 当前列值
    • 当前用户ID
    • 当前角色ID

step2:函数授权

  • 创建好函数后,如果后续有其他用户需要使用此函数,将函数绑定到需要脱敏的数据表中时,您需要将新建的函数授权给其他用户。
  • 您需要给对应用户授予函数的 EXECUTE(执行)权限。权限的详细说明请参见权限管理

step3:绑定列掩码

单个绑定

  1. 完成函数准备后,进入Catalog表的 基本信息 > 字段信息 模块,在需要脱敏的字段后单击 添加列掩码“。
    Image

  2. 在弹窗中选择已创建好的脱敏函数,完成绑定。

    说明

    支持选择有 EXECUTE 权限的跨 Catalog 函数。

完成绑定后,后续用户查询此列数据时,系统将触发函数的脱敏规则,返回脱敏后的数据。

批量绑定

当用户需要对跨表、多列的敏感字段统一配置绑定列掩码时,可结合 DataLeap 提供的 Tag(标签)功能,实现批量过滤待脱敏字段、批量绑定列掩码。

注意事项

  • 结合 Data Leap 提供的 Tag(标签)功能配置时,若函数(含引用的规则表)、Tag(标签)或 Column(列)有更新,存量已生效的脱敏结果不会自动更新,下一次执行查询时,将按最新的 函数/Tag/Column 配置重新计算脱敏结果。
  • 通过 DataLeap 查询数据后,查询历史会保留当时的脱敏结果,查询历史记录不会重刷。

核心步骤

  1. 使用 DataLeap 提供的Tag(标签)功能,在 DataLeap 的 ”我的库表“> "LAs catalog"中对目标表的字段设置”自定义标签“,用于标注这些为需要脱敏的字段。
  2. 通过自定义标签的ID、取值,可快速过滤出符合条件的库表字段信息。
  3. 通过 PySpark 任务,调用 LAS Catalog 的函数、列掩码等 OpenAPI 接口,可实现对通过标签过滤出的待脱敏字段,批量绑定列掩码函数。

step4:脱敏效果验证

完成列掩码绑定后,您可以在引擎侧(EMR SQL编辑器 或其他作业提交入口)提交一个数据查询任务,提交查询作业, 验证数据脱敏效果。
例如,在EMR SQL编辑器提交 :

select *from test_db.test.tb

查询结果如下,name 列已按策略脱敏。
Image

相关操作

查看列掩码详情

用户可以在 元数据 > 目标数据库 > 表详情 > 字段信息 中查看列的 Column Mask 绑定详情,包括:

  • Column Mask 对应的函数名称
  • 函数详情页跳转链接

如果该列掩码是通过 EMR 或DataLeap 端完成绑定,LAS Catalog 中也支持同步回显。
Image

移除列掩码

元数据 > 目标数据库 > 表详情 > 字段信息 中,点击 移除列掩码,可移除列的 Column Mask 函数。
若直接 删除函数,​可能会导致运行中的关联作业任务失败。脱敏规则在新任务执行时不再生效。
Image

修改 Column Mask 函数

元数据 > 目标数据库 > 函数详情 页面中,可修改 Column Mask 函数,包括编辑函数和删除函数。
Image

相关API

函数管理接口

API

说明

ListUDF

查询函数列表

GetFunction

查询函数详情

CreateFunction

创建函数,支持配置高级参数

AlterFunction

编辑函数,支持修改高级参数配置

DropFunction

删除函数

列掩码接口

API

说明

BindColumnMask

绑定列掩码

UnbindColumnMask

解绑列掩码

GetColumnMaskBindings

解除某列的脱敏函数绑定。

ListColumnMaskBindings

分页查询已绑定 mask 的列信息

表查询接口

API

说明

GetTableDetail

获取元数据表详情,可查看对应表已绑定的列掩码函数详情

最近更新时间:2026.07.03 21:02:58
这个页面对您有帮助吗?
有用
有用
无用
无用