云服务器内容精选

  • GS_MASKING GS_MASKING视图显示所有已配置的动态脱敏策略信息。需要有系统管理员或安全策略管理员权限才可以访问此视图。 表1 GS_MASKING字段 名称 类型 描述 polname name 脱敏策略名称。 polenabled boolean 脱敏策略开关。 maskaction name 脱敏函数。 labelname name 脱敏函数作用的标签名称。 masking_object text 脱敏数据库资源对象。 filter_name text 过滤条件的逻辑表达式。 父主题: 动态脱敏
  • GS_MASKING_POLICY_ACTIONS GS_MASKING_POLICY_ACTIONS系统表记录动态数据脱敏策略中相应的脱敏策略包含的脱敏行为,一个脱敏策略对应着该表的一行或多行记录。需要有系统管理员或安全策略管理员权限才可以访问此系统表。 表1 GS_MASKING_POLICY_ACTIONS表字段 名称 类型 描述 oid oid 行标识符(隐含属性,必须明确选择)。 actiontype name 脱敏函数,标识脱敏策略使用的脱敏函数。 actparams name 向脱敏函数中传递的参数信息。 actlabelname name 被脱敏的label名称。 policyoid oid 该条记录所属的脱敏策略的oid,对应GS_MASKING_POLICY中的oid。 actmodifydate timestamp without time zone 该条记录创建或修改的最新时间戳。 父主题: 动态脱敏
  • GS_MASKING_POLICY GS_MASKING_POLICY系统表记录动态数据脱敏策略的主体信息,每条记录对应一个脱敏策略。需要有系统管理员或安全策略管理员权限才可以访问此系统表。 表1 GS_MASKING_POLICY表字段 名称 类型 描述 oid oid 行标识符(隐含属性,必须明确选择)。 polname name 策略名称,唯一不可重复。 polcomments name 策略描述字段,记录策略相关的描述信息,通过COMMENTS关键字体现。 modifydate timestamp without time zone 策略创建或修改的最新时间戳。 polenabled boolean 策略启动开关。 t(true):表示策略启动。 f(false):表示策略没有启动。 父主题: 动态脱敏
  • GS_MASKING_POLICY_FILTERS GS_MASKING_POLICY_FILTERS系统表记录动态数据脱敏策略对应的用户过滤条件,当用户条件满足FILTER条件时,对应的脱敏策略才会生效。需要有系统管理员或安全策略管理员权限才可以访问此系统表。 表1 GS_MASKING_POLICY_FILTERS表字段 名称 类型 描述 oid oid 行标识符(隐含属性,必须明确选择)。 filtertype name 过滤类型。目前值仅为logical_expr。 filterlabelname name 过滤范围。目前值仅为logical_expr。 policyoid oid 该条用户过滤条件所属的脱敏策略oid,对应GS_MASKING_POLICY中的oid。 modifydate timestamp without time zone 该条用户过滤条件创建或修改的最新时间戳。 logicaloperator text 过滤条件的波兰表达式。 父主题: 动态脱敏
  • GS_MASKING GS_MASKING视图显示所有已配置的动态脱敏策略信息。需要有系统管理员或安全策略管理员权限才可以访问此视图。 表1 GS_MASKING字段 名称 类型 描述 polname name 脱敏策略名称。 polenabled boolean 脱敏策略开关。 maskaction name 脱敏函数。 labelname name 脱敏函数作用的标签名称。 masking_object text 脱敏数据库资源对象。 filter_name text 过滤条件的逻辑表达式。 父主题: 动态脱敏
  • GS_MASKING_POLICY_FILTERS GS_MASKING_POLICY_FILTERS系统表记录动态数据脱敏策略对应的用户过滤条件,当用户条件满足FILTER条件时,对应的脱敏策略才会生效。需要有系统管理员或安全策略管理员权限才可以访问此系统表。 表1 GS_MASKING_POLICY_FILTERS表字段 名称 类型 描述 oid oid 行标识符(隐含属性,必须明确选择)。 filtertype name 过滤类型。目前值仅为logical_expr。 filterlabelname name 过滤范围。目前值仅为logical_expr。 policyoid oid 该条记录所属的脱敏策略的oid,对应GS_MASKING_POLICY中的oid。 modifydate timestamp without time zone 该条用户过滤条件创建或修改的最新时间戳。 logicaloperator text 过滤条件的波兰表达式。 父主题: 动态脱敏
  • 参考:动态脱敏规则介绍 MRS Hive动态脱敏规则由MRS Ranger组件提供,当前支持的规则如表2所示。 MRS Hive数据源的“SM3”、“自定义/保留前x后y”和“自定义/掩盖前x后y”这三种脱敏规则非MRS Ranger组件提供,而是通过UDF自定义函数实现的算法。因此如果使用这三种脱敏规则之一,则会上传算法依赖的JAR包到MRS集群,并需要提前授予Ranger数据连接中账号的创建UDF权限以及所有用户的使用UDF权限,详见参考:配置Ranger组件中的UDF相关权限。 DWS动态脱敏规则由DWS提供,当前支持的规则如表3所示。 表2 MRS动态脱敏规则 数据类型 脱敏规则 掩盖英文字符和数字 保留后四位 保留前四位 哈希掩盖 掩盖月份和日期 NULL掩盖 SM3 自定义/保留前x后y 自定义/掩盖前x后y TINYINT 位数不变,将数值全部替换为1 无变化,最大值为127 无变化,最小值为-128 值变为NULL 位数不变,将数值全部替换为1 值变为NULL 不支持 不支持 不支持 SMALLINT 位数不变,将数值全部替换为1 无变化,最大值为12767 无变化,最大值为-32768 值变为NULL 位数不变,将数值全部替换为1 值变为NULL 不支持 不支持 不支持 INT 位数不变,将数值全部替换为1 保留后四位 保留前四位 值变为NULL 位数不变,将数值全部替换为1 值变为NULL 不支持 不支持 不支持 BIGINT 位数不变,将数值全部替换为1 保留后四位 保留前四位 值变为NULL 位数不变,将数值全部替换为1 值变为NULL 不支持 不支持 不支持 BOOLEAN 值变为NULL 值变为NULL 值变为NULL 值变为NULL 值变为NULL 值变为NULL 不支持 不支持 不支持 FLOAT 值变为NULL 值变为NULL 值变为NULL 值变为NULL 值变为NULL 值变为NULL 不支持 不支持 不支持 DOUBLE 值变为NULL 值变为NULL 值变为NULL 值变为NULL 值变为NULL 值变为NULL 不支持 不支持 不支持 STRING 英文字母变为x,数字变为n 中文无变化,字母等变为X 中文无变化且占一位,字母等变为X 全部被hash到64长度 中文无变化且占一位,字母等变为X 值变为NULL SM3算法加密 保留前x后y 掩盖前x后y TIMESTAMP 值变为NULL 值变为NULL 值变为NULL 值变为NULL 值变为NULL 值变为NULL 不支持 不支持 不支持 CHAR 英文字母变为x,数字变为n 字母数字变为X,后面4位保留(定长有空格) 字母数字变为X,前面4位保留(定长有空格) 全部被hash到64长度 中文无变化且占一位,字母等变为X 值变为NULL SM3算法加密 保留前x后y 掩盖前x后y VARCHAR 英文字母变为x,数字变为n 后四位被保留(中文无变化且占一位),字母等变为X 前四位被保留(中文无变化且占一位)字母等变为X 全部被hash到64长度 中文无变化且占一位,字母等变为X 值变为NULL SM3算法加密 保留前x后y 掩盖前x后y DATE 年月日变为0001-01-01 年月日变为0001-01-01 年月日变为0001-01-01 值变为NULL year保留,其他数值变为01 值变为NULL 不支持 不支持 不支持 表3 DWS动态脱敏规则 数据类型 脱敏规则 全掩码 保留后4位,其余脱敏为‘*’ 保留前2位,其余脱敏为‘*’ 自定义 字符类型 bpchar、varchar、text、inet、macaddr、uuid、char、txt 全部脱敏为空。 后四位被保留,其余脱敏为“*” 前两位被保留,其余脱敏为“*” 自定义脱敏开始和结束位置,脱敏字符 数值类型 numeric、int2、int8、money、float8、float4、interval、decimal、double precision、real、integer、smallint、bigint 全部脱敏为“0” 不支持 不支持 自定义脱敏开始和结束位置,脱敏字符 时间类型 timestamp、time、timetz、timestamptz、date、time without time zone、timestamp without time zone、time without time zone、timestamp without time zone 全部脱敏为固定值 不支持 不支持 自定义勾选脱敏目标为年、月、日等 其他类型 全部脱敏为固定值 不支持 不支持 不支持
  • 约束与限制 仅DAYU Administrator、Tenant Administrator用户或者数据安全管理员可以创建、修改或删除动态脱敏策略,其他普通用户无权限操作。 MRS Hive和DWS动态脱敏策略为指定用户/用户组在数据源上关联策略,因此需要如果希望在 DataArts Studio 数据开发执行脚本、测试运行作业时,使用当前用户身份认证鉴权以实现动态脱敏策略生效,则需要启用细粒度认证。 当前动态脱敏策略仅支持MRS Hive和DWS数据源。 单条动态脱敏策略的配置维度为表级别,即一个表只允许绑定一个策略,一个策略也是只允许绑定一个表。只有处于“同步成功”状态的策略才能生效。 MRS Hive动态脱敏时,MRS Ranger支持对同一列配置不同规则,按照配置的时间顺序先后匹配,因此可以配置多条同集群、同库表列的不同内容的脱敏策略。 当前MRS服务支持的脱敏规则如表2所示,但对中文字符仅支持NULL掩盖和哈希掩盖两种脱敏方式,如果选择其他脱敏方式则脱敏不生效。 MRS Hive数据源的“SM3”、“自定义/保留前x后y”和“自定义/掩盖前x后y”这三种脱敏规则非MRS Ranger组件提供,而是通过UDF自定义函数实现的算法。因此如果使用这三种脱敏规则之一,则会上传算法依赖的JAR包到MRS集群,并需要提前授予Ranger数据连接中账号的创建UDF权限以及所有用户的使用UDF权限,详见参考:配置Ranger组件中的UDF相关权限。 DWS动态脱敏不支持DWS逻辑集群,脱敏前需启用DWS动态脱敏能力(修改DWS集群“feature_support_options”参数的CN参数值和DN参数值均为“enable_data_redaction”,修改操作详见修改数据库参数),且DWS数据连接中的账户要具备待脱敏表的GRANT权限(数据库对象创建后,默认只有对象所有者或者系统管理员可以通过GRANT命令将对象的权限授予其他用户)。 当前DWS服务支持的脱敏规则如表3所示,不支持中文脱敏,如果对含有中文字符的数据进行脱敏则可能会出现乱码。
  • 前提条件 新建MRS Hive脱敏策略前,已完成如下操作: 在管理中心创建 MapReduce服务 (MRS Ranger)类型的数据连接,请参考创建DataArts Studio数据连接。 已完成用户同步,将 IAM 上的用户信息同步到数据源上,详见同步IAM用户到数据源。 新建DWS脱敏策略前,已完成如下操作: 已在管理中心创建 数据仓库 服务(DWS)类型的数据连接,请参考创建DataArts Studio数据连接。 已完成用户同步,将IAM上的用户信息同步到数据源上,详见同步IAM用户到数据源。 已修改DWS集群“feature_support_options”参数的CN参数值和DN参数值均为“enable_data_redaction”,用于启用DWS动态脱敏能力,修改操作详见修改数据库参数。 数据连接中的账户要具备待控制表的GRANT权限(数据库对象创建后,默认只有对象所有者或者系统管理员可以通过GRANT命令将对象的权限授予其他用户)。 MRS Hive和DWS动态脱敏策略为指定用户/用户组在数据源上关联策略,因此需要如果希望在DataArts Studio数据开发执行脚本、测试运行作业时,使用当前用户身份认证鉴权以实现动态脱敏策略生效,则需要启用细粒度认证。 如果希望创建脱敏策略时能够查看哪些字段为敏感字段,则需要提前完成敏感数据发现任务,并通过“敏感数据分布”修正敏感数据字段的数据状态为“有效”。详情请参考发现敏感数据和查看敏感数据分布。
  • 创建动态脱敏策略 在DataArts Studio控制台首页,选择对应工作空间的“数据安全”模块,进入数据安全页面。 单击左侧导航树中的“动态脱敏”,进入动态脱敏页面。 图1 进入动态脱敏页面 单击“新建”,进入新建动态脱敏策略页面,参数配置参考表1。 图2 新建动态脱敏策略参数配置 创建动态脱敏策略参数配置说明: 表1 配置策略参数 参数名 参数说明 *策略名称 动态脱敏策略的唯一标识,DataArts Studio实例内的名称唯一。 为便于策略管理,建议名称中标明要脱敏的对象和脱敏规则。 *数据源类型 当前支持MRS Hive、DWS数据源。 MRS Hive *用户组/用户 指定当前工作空间成员中的用户或用户组。当指定对象在数据开发组件中查询或导出敏感数据时,系统会对敏感数据进行动态脱敏,保护敏感数据不被泄露。 *数据连接 从下拉列表中选择数据连接类型中已创建的数据连接,若未创建请参考创建DataArts Studio数据连接新建连接。 *集群名称 无需选择,自动匹配数据连接中的数据源集群。 *数据库 选择敏感数据所在的数据库。 *数据表 选择敏感数据所在的数据表。 *数据列 您需要勾选一个或多个待脱敏列,并根据不同数据列的数据类型,选择合适的脱敏规则。各类数据源中不同数据类型支持的脱敏规则不同,详见参考:动态脱敏规则介绍。 另外,如果选中的库表列有进行过敏感数据发现并且敏感数据字段的数据状态为“有效”,则将密级和数据分类显示在数据列区域中。 DWS *用户组/用户 指定当前工作空间成员中的用户或用户组。当指定对象在数据开发组件中查询或导出敏感数据时,系统会对敏感数据进行动态脱敏,保护敏感数据不被泄露。 *数据连接 从下拉列表中选择数据连接类型中已创建的数据连接,若未创建请参考创建DataArts Studio数据连接新建连接。 *集群名称 无需选择,自动匹配数据连接中的数据源集群。 *数据库 选择敏感数据所在的数据库。 *schema 选择敏感数据所在的schema。 *数据表 选择敏感数据所在的数据表。 *数据列 您需要勾选一个或多个待脱敏列,并根据不同数据列的数据类型,选择合适的脱敏规则。各类数据源中不同数据类型支持的脱敏规则不同,详见参考:动态脱敏规则介绍。 另外,如果选中的库表列有进行过敏感数据发现并且敏感数据字段的数据状态为“有效”,则将密级和数据分类显示在数据列区域中。 单击“确定”,完成动态脱敏策略创建。动态脱敏策略创建完成后,需要手动单击“同步”,将该策略同步到数据源中。
  • 相关操作 同步策略:在动态脱敏页面,单击对应任务操作栏中的“同步”,即可将该策略同步到数据源中。当需要批量同步时,可以在勾选策略后,在列表上方单击“同步”。 只有处于“同步成功”状态的策略才能生效。如果策略同步失败,可通过查看策略详情查看策略运行日志,通过日志排查同步失败原因。待问题修复后请重新同步,如果仍同步失败,请联系技术支持人员协助处理。 编辑策略:在动态脱敏页面,单击对应任务操作栏中的“编辑”,即可编辑动态脱敏策略。 删除策略:在动态脱敏页面,单击对应任务操作栏中的“删除”,在弹窗中再次确认后,即可删除策略。当需要批量删除时,可以在勾选策略后,在列表上方单击“删除”。 动态脱敏策略删除后将被转移至回收站中,您可以在30天内进行还原,在回收站中超过30天的数据将被自动删除。详见管理回收站章节。 查看策略详情:在动态脱敏页面,通过同步状态筛选策略或直接找到需要查看的策略,单击策略名即可查看策略详情。 图3 查看策略详情
  • 请求示例 脱敏策略列表中对字段col使用KEYWORD脱敏算法,将指定关键字keyword替换为target。 POST https://{endpoint}/v1/{project_id}/data/mask { "mask_strategies" : { "name" : "col", "algorithm" : "KEYWORD", "parameters" : { "key" : "keyword", "target" : "target" } }, "data" : { "col" : "keyword" } }
  • 请求样例 { "mask_strategies": [ { "name": "col1", "algorithm": " NUMERIC", "parameters": { "value": 0.05 } } ], "data": [ { "col1": "test" } ] }