通过DSC实现敏感数据防泄露
应用场景
敏感数据是一旦遭到未授权访问、泄露或滥用,将会给个人或组织带来严重风险的信息。对于个人,身份证号、住址、银行卡等隐私信息属于敏感数据;对于企业,客户资料、财务信息、技术资料、重大经营决策等核心信息均为敏感数据。
该最佳实践优先推荐金融、政务、医疗、互联网等高敏感行业客户落地。从业务视角来看,企业经常需要将生产环境数据交付至开发测试、数据分析、外部合作场景;从组织视角来看,企业跨部门、跨机构之间存在常态化数据共享需求。 直接流通原始生产数据存在极高泄露风险,人工处理数据成本高、管控标准难以统一。
华为云数据安全中心(DSC)静态数据脱敏功能,可按照脱敏规则批量完成海量数据变形转换,适配生产数据下发至开发、测试及外发环境场景,支撑开发测试、数据共享、数据研究等业务。借助该能力,企业能够安全完成跨环境、跨组织的数据交付,兼顾业务正常运转与敏感数据安全,满足监管合规要求。
方案架构
静态脱敏:可以按照脱敏规则(DSC内置脱敏规则或用户自定义脱敏规则)一次性完成大批量数据的变形转换处理,静态脱敏通常用在将生产环境中的敏感数据交付至开发、测试或者外发环境的情况使用,适用于开发测试、数据分享、数据研究等场景。您可以通过DSC控制台创建脱敏任务,快速实现对数据库、大数据以及OBS的脱敏。
方案优势
数据脱敏(Data Masking)是一种数据安全技术,通过对敏感信息进行变形、替换或隐藏,使得数据在非生产环境(如开发、测试、分析)中可用,但无法被逆向还原出真实信息。
DSC支持的数据脱敏方式有Hash脱敏、加密脱敏、字符掩盖、关键字替换、删除脱敏、取整脱敏、仿真脱敏等多种脱敏方式,满足银行、医疗、电商等各种场景下数据的安全输出,从而达到在利用数据价值的同时守住数据安全底线:
| 场景 | 作用 |
|---|---|
| 合规要求 | 满足GDPR、个人信息保护法等法规,防止泄露真实用户隐私 |
| 开发测试 | 给程序员/测试人员提供真实数据结构,但不暴露真实数据 |
| 数据分析 | 让分析师处理生产级数据量,同时保护敏感字段 |
| 三方场景 | 第三方服务商接触数据时,降低泄露风险 |
约束与限制
DSC数据脱敏功能支持数源如表1所示。
| 脱敏类型 | 支持的数据源类型 |
|---|---|
| 数据库脱敏 | SQLServer、MySQL、TDSQL、PostgreSQL、KingBase(人大金仓)、DMDBMS(达梦)、GaussDB、Oracle、DWS、GreenPlum |
| Elasticsearch脱敏 | Elasticsearch |
| Hive脱敏 | Hive |
| HBase脱敏 | HBase |
| MRS脱敏 | MRS_HIVE |
| OBS脱敏 | OBS桶文件(文本、图片、LeRobot数据集)
|
资源与成本规划
本节介绍最佳实践中资源规划情况,包含以下内容:
| 资源 | 资源说明 | 每日费用 |
|---|---|---|
| 数据安全中心 | 专业版:
| 具体的计费方式及标准请参考计费说明。 |
操作视频
操作步骤
以下以脱敏RDS数据库数据表中敏感信息为例,介绍如何识别敏感数据,并使用“Hash脱敏”中的SHA256算法,对识别出的敏感数据进行脱敏。
步骤一:购买数据安全中心专业版
- 登录DSC服务控制台。
- 单击左上角的
,选择区域或项目。 - 首次购买DSC,在界面左侧,单击“立即购买”。
- 在“购买数据安全中心”页面,单击下拉框选择“当前区域”、“当前项目”。
同一个区域只支持购买一个DSC版本。
- “版本规格”选择“专业版”。
- (可选)参考资源与成本规划,根据自身业务情况,选择“数据库扩展包”、和“OBS扩展包”的数量。
- 1个数据库扩展包含1个可添加数据库(支持RDS、DWS、ECS自建数据库、Elasticsearch、ECS自建大数据等)资产。
- 1个OBS扩展包含1TB体量,即1024GB。
- 选择“购买时长”。单击时间轴的点,选择购买时长 ,可以选择1个月~3年的时长。
勾选“自动续费”后,当服务期满时,系统会自动按照购买周期进行续费。
- 在页面的右下角,单击“立即购买”。
如果您对价格有疑问,可以单击页面左下角的“了解计费详情”,了解产品价格。
- 确认订单无误后,阅读并勾选“我已阅读并同意《数据安全中心免责声明》”,单击“去支付”。
- 进入“付款”页面,请选择付款方式进行付款。
步骤二:授权RDS数据库资产
- 在左侧导航树中选择,进入“资产管理”页签。
- 在资产管理界面左上角,单击云资产授权旁边的“修改”。
- 在“云资产委托授权”页面,开启数据库的授权操作。 图2 开启数据库授权
- 单击“RDS”进入RDS“数据库”列表界面。 图3 RDS数据库实例
- 单击“数据库实例”,进入“数据库实例”页签。可以通过以下两种途径完成授权:
- 方法一:
- 单击“数据库实例”列表“操作”列的“授权”,输入数据库信息进行授权。 图4 数据库授权
- 选择“权限设置”(仅RDS数据库需要设置权限):
- 授权“只读权限”:只能使用敏感数据识别功能。
- 授权“读写权限”:可使用敏感数据识别和数据脱敏功能。
- 创建了RDS只读权限后,DSC服务会在RDS创建一个dsc_readonly账户。
- dsc_readonly账户的密码在RDS重置后,将不会自动同步到DSC服务,会导致敏感数据识别任务失败,因此,建议您不要重置该账户密码。
- 如果您已在RDS里重置了dsc_readonly账户的密码,建议您在DSC服务里先删除已授权的rds实例,再重新对该实例进行权限设置。
- DSC暂不支持对RDS中已开启SSL的MySQL数据库进行扫描和脱敏。
- 创建了RDS只读权限后,DSC服务会在RDS创建一个dsc_readonly账户。
- 输入“数据库名称”和“资产名称”、“用户名”和“密码”。
- 数据库名称要求:只能由中文字符、英文字母、数字、下划线和中划线组成。
- 资产名称要求:输入长度范围为4到255个字符。
- (可选)单击下拉框选择“分组”名称,选择资产的分组,选择后可在资产分组管理中查看分组情况。如果不选择分组资产默认显示在“默认分组”中。
- 单击“添加”可添加多个数据库同时进行授权。
- 单击“数据库实例”列表“操作”列的“授权”,输入数据库信息进行授权。
- 方法二:
- 通过单击“实例名称”进入实例详情页面,单击“操作”列的“授权”进入“数据库授权”界面。 图5 实例详情
- 也可以勾选多个数据库,单击左上角“批量授权”,批量授权数据库。
- 输入“数据库名称”、“资产名称”、“用户名”和“密码”。
- 数据库名称要求:只能由中文字符、英文字母、数字、下划线和中划线组成。
- 资产名称要求:输入长度范围为4到255个字符。
- (可选)单击下拉框选择“分组”名称,选择资产的分组,选择后可在资产分组管理中查看分组情况。如果不选择分组资产默认显示在“默认分组”中。
- 单击“添加”可添加多个数据库同时进行授权。
- 通过单击“实例名称”进入实例详情页面,单击“操作”列的“授权”进入“数据库授权”界面。
- 方法一:
- 完成授权后,单击“数据库”页签,查看已授权数据库的连通状态。 资产授权完成后,该资产“连通状态”为“检查中”,此时,DSC会测试数据库的连通性。
- DSC能正常访问已添加的数据库,该数据库的“连通状态”为“成功”。
- 如果DSC不能正常访问已添加的数据库,该数据库的“连通状态”为“失败”。鼠标移动至“失败”上查看失败原因或者参照如何排查添加数据库连通性失败?解决。
步骤三:识别敏感数据
- 在左侧导航树中,选择,进入“任务管理”界面。
- 单击“新建任务”,在弹出的“新建任务”对话框中,配置任务基本信息,其他可选参数根据需要进行配置。
表3 新建任务参数说明 参数
说明
取值样例
任务名称
您可以自定义敏感数据识别任务名称。
任务名称需要满足以下要求:
- 4~255个字符。
- 字符可由中文、英文字母、数字、下划线或中划线组成。
- 开头需为中文或者字母。
- 任务名称不能与已有的任务名称重复。
test
数据源
选择“数据库”。
DSC将对已授权的数据库资产进行敏感数据识别。
数据库 > gbx-jiami
识别模板
选择内置模板或者自定义模板,DSC将根据您选择的模板对数据进行分级分类展示。
通用云数据安全分类分级模板
识别周期
设置数据识别任务的执行策略:
- 单次:根据设置的执行计划,在设定的时间执行一次该识别任务。
- 每天:选择该选项,即在每天的固定时间执行该识别任务。
- 每周:选择该选项,即在设定的每周这一时间点执行该识别任务。
- 每月:选择该选项,即在设定的每月这一时间点执行该识别任务。
单次
识别模式
根据需求选择增量识别或者全量识别:
- 增量识别:选择增量识别,已识别过的数据将不再进行重复识别。
- 全量识别:选择全量识别将对全部内容重新进行识别。
全量识别
识别模式
根据需求选择增量识别或者全量识别:
- 增量识别:选择增量识别,已识别过的数据将不再进行重复识别。
- 全量识别:选择全量识别将对全部内容重新进行识别。
全量识别
执行计划
“识别周期”为“单次”时,显示该选项:- 立即执行:选择该选项,单击“确定”,系统立即执行数据识别任务。
- 定时启动:在指定时间执行一次该识别任务。
立即执行
- 单击“确定”,返回敏感数据任务列表。
- 任务状态为“识别完成”后,在该任务的操作列,单击“识别结果”,查看数据识别结果。
Birthday和PhoneNumbers列被识别为敏感数据风险。
- 在目标资产所在行的“操作”列,单击“详情”,查看结果详情。 图6 分类分级结果详情

- 执行步骤四:数据静态脱敏对数据库“gbx-jiami”中的表“info1”的Birthday和PhoneNumbers列进行脱敏。
步骤四:数据静态脱敏
DSC支持对数据库、ES、MRS以及Hive等数据类型的脱敏任务,本节以创建数据库静态脱敏任务为例进行演示,如需了解其他脱敏相关的方法请参见:创建数据静态脱敏任务。
- 在左侧导航树中,选择,进入“数据脱敏”页面。
- 单击“新建任务”,进行“数据源配置”。
如果您想脱敏后生成一张完整的表,此处勾选所有数据类型。
图7 数据源配置
- 单击“下一步”,进行“脱敏算法配置”。 图8 脱敏算法配置
- 单击“下一步”,进入“脱敏周期”页面,配置脱敏周期。
- 单击“下一步”,进行“数据目标配置”,配置脱敏后生成的表的存放位置。
- 单击“完成”,返回到数据库脱敏任务列表,单击
,启用脱敏任务,并在任务所在行的“操作”列,单击“立即运行”,执行脱敏任务。 当“状态”为“已完成”时,表示脱敏成功。