【OSS安全最佳实践】对OSS表格文件中的敏感数据进行脱敏
使用数据安全中心 DSC(Data Security Center)的静态脱敏,对当前账号下源OSS Bucket中的结构化TXT、CSV、XLSX和XLS格式文件中的敏感数据进行脱敏,然后将脱敏后的文件保存到当前账号下的目标OSS Bucket,实现数据的安全共享。
方案概览
脱敏后数据示例:
脱敏前的数据 | 脱敏后的数据 | ||||
姓名 | 手机号 | 身份证号码 | 姓名 | 手机号 | 身份证号码 |
张三三 | 13900001234 | 111222190002309000 | 张** | 139****1234 | 111###########9000 |
李四四 | 13900001111 | 150802202207214000 | 李** | 139****1111 | 150###########4000 |
王五五 | 13900002222 | 120105195001066000 | 王** | 139****2222 | 120###########6000 |
要实现以上数据脱敏效果,只需4步:
-
创建OSS Bucket并上传文件:创建源OSS Bucket和目标OSS Bucket,并上传包含敏感数据的表格文件到源OSS Bucket。
-
将OSS Bucket文件接入DSC:DSC授权接入OSS Bucket,确保DSC能对OSS Bucket进行读取和写入操作。
-
新增脱敏任务:创建脱敏任务,配置源文件中敏感字段的脱敏算法及对应脱敏规则,以及脱敏后文件的存储位置等。
-
启动脱敏任务:启动任务,对源OSS Bucket中表格文件中的敏感数据进行脱敏,然后将脱敏后的文件保存到目标OSS Bucket。
前提条件
-
当前账号已购买数据安全中心实例并授权数据安全中心访问其他阿里云资源。
因数据安全中心服务仅企业版实例支持数据脱敏功能,所以必须购买数据安全中心的企业版,本示例针对OSS文件数据脱敏,仅需开启OSS数据管理服务,选择最低标准的OSS防护容量,对于数据库管理和增值模块服务可以全部关闭。
-
当前账号已开通对象存储OSS。
步骤一:创建OSS Bucket并上传文件
1.1 创建源OSS Bucket和目标OSS Bucket
-
在对象存储OSS控制台的Bucket列表页面,单击创建Bucket。
-
在创建 Bucket面板,配置如下参数,其他参数采用默认配置,然后单击完成创建。该OSS Bucket作为源OSS Bucket使用。
-
重复以上操作步骤,再创建一个OSS Bucket作为目标OSS Bucket使用。
1.2 上传表格文件到源OSS Bucket
-
在对象存储OSS控制台的Bucket列表页面的Bucket列表,单击源OSS Bucket名称。
-
在文件列表页面,单击上传文件。
-
单击扫描文件,选择本地文件(本文上传示例文件userdata.csv中包含姓名、手机号和身份证号码的敏感信息),然后单击上传文件,等待文件上传成功。
步骤二:将OSS Bucket文件接入DSC
-
在数据安全中心的授权管理页面,单击资产授权管理。
-
在资产授权管理面板的非结构化数据下,选择OSS,单击资产同步。
-
资产同步完成后,选择源OSS Bucket和目标OSS Bucket,然后单击批量授权。
-
批量授权完成后,在资产授权管理页面,选择源OSS Bucket和目标OSS Bucket,然后单击批量连接。
-
在提示框中,无需选中数据扫描和识别,直接单击确定。
等待OSS Bucket的连接状态变为已连接。
步骤三:新增脱敏任务
在数据安全中心的数据脱敏页面,单击新增脱敏任务。根据页面导航,完成数据脱敏任务配置。
3.1 配置脱敏的源文件
输入任务名称后,配置脱敏源为源OSS Bucket中敏感文件userdata.csv
,对于csv
类型的文件,需要指定列分隔符为逗号,本文示例文件表格包含标题行。
3.2 配置敏感字段的脱敏规则
在脱敏算法导航页中自动匹配展示userdata.csv
中标题行字段,本示例对姓名、手机号和身份证号码进行遮盖脱敏。
-
分别打开对应字段的脱敏开关,选择遮盖脱敏。
-
单击遮盖脱敏后的参数查看和修改,配置算法规则,单击保存。本示例配置以下脱敏规则:
-
姓名:使用
*
遮盖,保留前1后0。 -
手机号:使用
*
遮盖,遮盖自4至7。 -
身份证号码:使用
#
遮盖,保留前3后4。
-
3.3 配置脱敏后文件的存储位置
OSS数据源不支持添加水印,直接配置脱敏后文件到目标Bucket中存储,本示例选择结果集形式保存,文件名可以自定义,文件类型必须为csv
、xls
或txt
。
3.4 配置脱敏任务的触发方式
目前针对OSS文件脱敏任务,仅支持任务触发方式生效,其他参数配置均无效。
-
配置任务触发方式为仅人工。
-
单击提交。
步骤四:启动脱敏任务
4.1 执行任务
-
在静态脱敏页签的任务配置页签,单击新创建的脱敏任务操作列的启动,执行脱敏任务。
-
在静态脱敏页签,单击任务状态子页签,等待脱敏任务的执行进度为100%和状态为执行成功。
4.2 检验脱敏结果
-
前往对象存储OSS控制台的Bucket列表页面,单击目标Bucket名称,在文件列表中找到脱敏后的文件,文件名格式为
<目标文件名称>_<脱敏任务的执行时间>.<文件类型>
。例如usernews_20240808150643.csv
,其中20240808150643
表示任务执行时间为2024年08月08日的15:06:43。您可以单击下载获取该文件。 -
下载完成后,打开该文件,可以看到姓名、手机号、身份证号码已显示为脱敏后的数据。
总结
对于存储在OSS Bucket中原始数据,可以脱敏后存储到目标OSS Bucket再共享使用。数据脱敏后,即使共享数据遭泄露,也不会直接暴露敏感内容,降低了数据滥用和隐私侵犯的风险。脱敏后的数据可以在不泄露个人隐私的前提下,用于数据分析、模型训练、业务报告分享等场景。
灵活选择脱敏算法
数据脱敏主要依赖脱敏算法及其规则,DSC支持的脱敏算法包括哈希脱敏、遮盖脱敏、替换脱敏、变换脱敏、加密脱敏、数据解密和洗牌脱敏,每个脱敏算法都具备多种规则配置方法,在实际业务需求中可以选择不同脱敏算法应用到不同的业务场景中。
提升脱敏规则配置效率
DSC还支持脱敏模板功能,可以将相同应用场景中使用频率较高的脱敏算法配置在同一个脱敏模板中,并在配置静态脱敏规则时使用已有模板,提高配置脱敏规则的效率。
更多内容,请参见配置脱敏模板和算法。
定时脱敏任务
数据脱敏任务支持按照每小时、每天、每月或每周的某个时间点定时触发,以保障更新的数据能及时被脱敏使用。