实践示例:MaxCompute底层脱敏使用方法

当项目用户具备查询MaxCompute项目中某些敏感数据权限,但又不希望用户看到完整的敏感数据信息时,可对查询结果进行数据动态脱敏。本文为您介绍如何开启MaxCompute的动态脱敏功能,并提供参考示例。

背景信息

MaxCompute本身不具备动态脱敏能力,依赖于DataWorks数据保护伞的数据脱敏功能。您需先开通DataWorks的数据保护伞服务,才可为目标MaxCompute项目开启动态脱敏功能。开启动态脱敏功能后,您可基于数据保护伞的数据识别规则,配置项目的脱敏规则(即对哪些敏感数据进行脱敏)。

新版MaxCompute底层脱敏功能如下:

该功能可以有效保护诸如手机号、身份证号、银行卡号、车牌号、IP地址等敏感信息。动态脱敏功能仅会对查询结果进行脱敏,不会影响底层存储的数据。

使用限制

  • DataWorks专业版及以上版本,才可使用此功能。DataWorks基础版暂时无法使用此功能,如您的DataWorks为基础版,请升级DataWorks为合适版本。详情请参见版本升级

  • 仅华北2(北京)、华东2(上海)、华东1(杭州)、西南1(成都)、华南1(深圳)、华北2(北京政务云)、华东2(上海金融云)、中国(香港)、新加坡、德国(法兰克福)、马来西亚(吉隆坡)、美国(硅谷)、印度尼西亚(雅加达)地域支持使用MaxCompute底层脱敏。

  • 若启用MaxCompute底层脱敏并设置相应脱敏规则,则查询敏感数据时,会将MaxCompute底层脱敏作为生效规则;若未启用MaxCompute底层脱敏或未配置相应脱敏规则,则查询敏感数据时,会将已配置的上层脱敏场景规则作为生效规则。

  • MaxCompute底层脱敏不支持对MaxCompute数据表的主键字段进行脱敏。

  • 仅当MaxCompute项目中已存在数据并且数据创建超过24小时,才能使用此功能。

准备工作

  1. 准备待脱敏的MaxCompute项目和数据。具体操作,请参见创建MaxCompute项目导入数据

  2. 访问数据保护伞服务并开通。具体操作,请参见进入数据保护伞

    服务声明页面,勾选我已阅读并接受以上协议条款,单击立刻开通

开启数据脱敏功能

  1. 选择脱敏场景。

    1. 进入数据保护伞

    2. 在左侧导航栏,单击规则配置 > 数据脱敏管理,进入数据脱敏管理

    3. 脱敏场景区域选择底层脱敏场景 > MaxCompute引擎层脱敏_新

    说明

    如果需要在DataWorks界面上展示脱敏效果,需要打开数据开发/数据地图展示脱敏创建数据脱敏场景更多内容请参见创建数据脱敏场景

  2. 新建数据脱敏规则

  3. (可选)白名单配置

    若脱敏规则指定的数据不需要对某些用户进行脱敏展示,您可配置脱敏规则白名单。

    1. 数据脱敏管理页面,单击白名单配置

    2. 单击右上方的+白名单

    3. 新建白名单对话框,选择敏感字段类型用户组范围生效时间

      说明

      设置白名单生效时间后,若不在白名单脱敏时间的区间内,用户在查询该敏感信息时将会继续脱敏。

  4. 项目空间配置。

    1. MaxCompute引擎层脱敏_新,展示MaxCompute引擎层脱敏的所有MaxCompute项目空间。

    2. 击目标项目空间的状态开关,即可使该项目空间的MaxCompute底层脱敏规则生效。

      说明

      若启用MaxCompute底层脱敏并设置相应脱敏规则,则查询敏感数据时,会将MaxCompute底层脱敏作为生效规则;若未启用MaxCompute底层脱敏或未配置相应脱敏规则,则查询敏感数据时,会将已配置的上层脱敏场景规则作为生效规则。

查询数据并确认脱敏结果

本文示例在odpscmd界面通过SQL语句查询数据并确认脱敏结果。

  1. 执行查询SQL。

    说明

    MaxCompute底层数据脱敏仅支持会话级别使用。

    以杭州地域为例,完整实现MaxCompute底层数据脱敏脚本如下所示。

    select * from table;
  2. 查看脱敏结果。

    image.png