DMStar数据资产保护和动态脱敏系统技术方案书
一、产品概述
1.1数据的价值及重要性
1.1.1、数据是企业的战略资产和核心竞争力
数据是新经济时代的新石油,一种新型战略性资产,具有永不磨损、无限复制、价值放大、无限增值等特点;数据是企业未来的核心资产,数据即价值。这已是公认的产业趋势。一家企业拥有的数据规模、活性及分析能力将成为其综合竞争力的核心组成部分。
1.1.2、数据成为违规行为的首要获取目标
正因为数据蕴含着巨大的商业价值,往往成为恶意攻击和内部违规行为的目标。近年来,影响范围广大的数据泄露事件层出不穷。
1.1.3、数据泄露造成的伤害太大
现在的数据泄露事件,往往会导致成千上万人的个人信息曝光,严重打击企业的良好形象,社会影响巨大。
1.2数据安全管理工作日益受到重视
1、避免客户隐私数据泄露已成为许多监管部门的法规之一;
3、国际上,诸如Sarbanes-OxleyAct(萨班斯法案)、ISO27000信息安全管理体系都提出规避信息风险,对敏感信息提供完善保护的管理要求;
4、2018年5月25日,GeneralDataProtectionRegulation(通用数据保护条例),GDPR正式实施;
1.3脆弱的运维环境及数据泄露风险
1.4DMStar提供全方位的数据安全保护
DMStar数据资产保护和动态脱敏系统,采用全新的技术架构及理念,从数据库虚拟化、安全准入、访问控制、数据脱敏四个层面多维度全方位保护数据安全,有效抵御口令入侵、特权提升、漏洞入侵、SQL注入、窃取备份、勒索病毒、脱库等数据库攻击手段。能很好的满足动态脱敏的要求,实现真正的100%动态脱敏,防止敏感信息的泄露。
二、名词解释
2.1SCHEMA
数据库中的Schema,为数据库对象的集合,一个用户一般对应一个schema,一个数据库系统往往有多个schema组成,schema下有表、视图、存储过程、触发器等对象。
2.2DDL、DML权限
DDL:(DataDefinitionLanguage数据定义语言),用于定义和管理SQL数据库中的所有对象的语言;
DML:(DataManipulationLanguage数据操作语言),使用户能够查询数据库以及操作已有数据库中的数据;
2.3对象权限及CRUD
这里的对象权限特指表、视图的增、删、改、查权限;CRUD:是指在做计算处理时的增加(Create)、读取查询(Read)、更新(Update)和删除(Delete)几个单词的首字母简写。CRUD主要被用在描述软件系统中数据库或者持久层的基本操作功能,对应的SQL操作为:C(INSERT)、R(SELECT)、U(UPDATE)、D(DELETE)。
2.4业务应用模式,数据共享模式
系统提供两种不同的数据安全保障模式:业务应用模式:顾名思义,这种模式主要用于业务应用系统,防止来自业务应用系统的各种攻击,SQL注入等,该模式下用户可操作除在对象权限所设置的控制以外数据库下的所有对象(包括本schema和其他schema下的对象),同时受控于访问控制的DDL、DML权限设置范围,并提供敏感数据的脱敏保护;数据共享模式:该模式主要应用于数据利用场景,用户只可操作在访问控制模块的对象权限里所配置的CRUD的表、视图,并提供敏感数据的脱敏保护。
2.5模拟部署,正式部署
为保证该系统的正常接入、上线运行,往往需要一个模拟部署运行阶段,以观察各项配置是否正确,是否达到预期的控制效果,模拟部署状态下,不是预想允许设置的违规操作,在访问审计里的响应行为为“模拟拒绝”,通过对比访问审计结果和权限控制列表,可以优化和调整访问权限设置。若确认各项安全权限控制都正确,就可以切换为正式部署模式,真正的保障数据的安全。
2.6用户订阅
2.7数据脱敏
对敏感数据按需进行漂白、变形、遮盖等去隐私化处理,避免敏感信息泄露,同时又能保证脱敏后的输出数据能够保持数据的一致性和业务的关联性。
2.8静态脱敏
由BI工程师、数据分析师等通过ETL工具等类似手段把数据从生产库抽取出来,经ETL脱敏处理,最后加载落地到开发、测试库中,此时的开发、测试库已无敏感数据。但BI工程师和数据分析师等人员拥有生产数据库的账号、密码信息,或者利用职能移除ETL数据转换流程中的脱敏流程,都能很轻易的获得真实的敏感数据,数据安全管理员和ETL实施工程师的职权没有办法清晰的划分区别,因此无法有效防范数据的泄露问题。
1、需要有落地库支持,脱敏规则配置不能所见即所得;
2、帐号密码公开(实体库),存在泄露隐患;
3、与ETL结合紧密度过高,用户无法选择其他的ETL工具使用;
4、安全管理员和使用者职权无法分离;
5、无法从根本上有效防范数据的泄露问题;
2.9动态脱敏
对业务系统数据流中的敏感数据进行实时脱敏,或者根据用户身份验证级别应用更灵活的数据脱敏规则,动态的为数据进行脱敏操作。
三、产品解决方案
3.1产品价值
DMStar数据资产保护和动态脱敏系统能提供DDL、DML细粒度的权限控制;表级别的访问权限(insert、update、delete、select)控制,设置返回行数限制,防止批量信息泄露;虚拟化数据库,使用者无需知道真实数据库的帐号和密码,IP和端口等信息,提供精细到个人、机构的帐号权限管理;提供语意内容级的SQL验证分析和阻断功能,有效的保护实体数据库的安全。同时,DMStar产品能提供强大的敏感数据自动发现、敏感数据动态脱敏功能,极大的方便了敏感数据的管理和脱敏处理,有效的防止敏感信息的泄露。DMStar系统能保障数据安全,有效抵御口令入侵、特权提升、漏洞入侵、SQL注入、窃取备份、勒索病毒、拖库等数据库攻击手段,为生产业务系统保驾护航,能有效降低人为安全风险,满足合规、等保要求,保障企业效益。
3.1.1统一、可视化的一套帐号权限管理体系
3.1.2细粒度到表、字段的权限控制及可视化
现状:数据库权限管理粒度不够精细,无法管理到表级别,甚至字段级别,且不能可视化。DMStar完全可以做到表级别、字段级别的权限控制和可视化展现。
3.1.3敏感内容快速的自动发现
内置30多种敏感类型及自定义正则表达式的敏感类型,通过简单配置可快速发现定位不同类型数据库里的敏感信息。
3.1.4有效防止内部人员利用职务之便通过拍照等手段泄露敏感信息
现状:数据对内部运维、驻场等人员全裸奔;
DMStar对敏感信息通过多种脱敏手段进行动态脱敏处理和复杂SQL语句的脱敏处理,做到100%脱敏,无遗漏,无泄漏。
3.1.5防止批量信息的泄漏
DMStar可以设置某表的返回行数限制,防止批量信息导出泄漏。
3.1.6防止运维开发人员误删误改数据库表的发生
DMStar可以设置某表的删改影响行数控制,阻止危险操作的执行,避免误删误改数据库表里的数据,做到危险操作需高权限的审核通过处理。
3.1.7屏蔽真实数据库的账号和IP等信息,有效防止各种数据库攻击
当前,数据库攻击手段很多,如口令入侵、特权提升、漏洞入侵、SQL注入、窃取备份、DDOS攻击、勒索病毒、拖库等,通过提权、设置后门后,进而实现拖库、删除数据、加密数据等危险操作。所有的攻击往往需要数据库的IP、端口、帐号、密码、数据库类型等信息。
3.1.8数据库安全管理员和使用者职权分离,及全面的审计
3.1.9全面支持各种数据库,扩展方便
支持传统数据库如ORACLE、MYSQL、SQLSERVER、DB2等,大数据平台HADOOP、TERADATA、HBASE、KUDU、VERTICA等,及阿里云的数据库等。
3.2应用场景
1、内部运维管控安全
2、降低开发、测试、培训、外包风险
DMStar动态数据脱敏可以对不同用户和应用的访问进行实时的隐私数据屏蔽,帮助企业有效保护重要数据资产的访问;有效隔离真实的数据库帐户信息,减少数据库攻击的可能性。
3、防范业务应用系统漏洞,保护生产环境
4、数据交换、数据交易平台
因业务的紧密关联,不同机构、不同系统间需要进行数据交换、交易。由于早期信息系统安全设计重视度不够,许多传统的业务处理系统中,往往没有遵循数据最小需求原则。过量数据交换往往可能导致敏感信息泄露风险。
5、商务智能、大数据分析平台
随着大数据时代的来临,数据的流动性越来越强,利用大数据进行用户标签化和用户规律深度挖掘,成为企业商业行为中越来越普遍的现象。在进行数据分析之前,需要对敏感信息进行脱敏处理,避免交付敏感信息。
1.防批量信息泄露(返回行数控制);
2.数据库保护(虚拟化数据库,不公开真实数据库的帐号密码ip端口信息,使攻击无从下手);
3.细粒度访问权限控制,控制访问的数据库范围、DDL、DML权限;
5.表级别的访问权限(insert、update、delete、select),表级别的返回行数限制;
6.防误删误改操作(delete、update),表级别的影响行数控制;
7.带参数和影响行数的数据库审计功能;
8.动态脱敏;
9.静态脱敏,全面支持静态脱敏,无需中间库,直接就地脱敏,管理方便快捷,脱敏速度快;
10.支持多种数据库和版本,ORACLE、MYSQL、SQLSERVER、DB2、POSTGRESQL、INFORMIX、SYBASE、GBASE、GREENPLUM、HADOOP、TERADATA、HBASE、KUDU、VERTICA等,及云平台数据库;
11.内置数据库防火墙功能,防Sql注入、拖库攻击;
12.内置30多种脱敏规则,及自定义规则,满足不同的脱敏需求;
13.敏感内容快速自动发现;
14.业务应用模式和数据共享模式,支持多种应用场景,全面保障数据安全;
15.实现数据安全管理员和数据使用者真正的职权分离;
16.100%动态脱敏,无遗漏,无泄露;
五、功能介绍
5.1首页
首页分菜单区、审计区、数据库连接状态区、首页刷新频率设置、用户信息设置等区块。
数据库连接状态区:显示数据库的运行状态,红色图标表示异常。
5.2数据库管理
1、新增、修改、删除数据库连接;
2、详细显示数据库的连接配置信息:数据库类型、数据库名称、业务系统名称、数据库服务名、数据库账户、IP地址、端口等;
3、一键侦测功能,一次性侦测所有已配置数据库连接的状态。
5.3SCHEMA管理
创建、修改、删除DMSTAR系统的SCHEMA信息。
5.3.1SCHEMA管理
2、新增SCHEMA时,输入SCHEMA名称,选择数据库,选择实体SCHEMA;
3、修改时,只能修改审计开关;
4、可删除SCHEMA;
5.3.2SCHEMA表、列查询
查询某SCHEMA下的表、列的详细信息。展示界面分三个区:
SCHEMA区:显示系统的SCHEMA列表;表、视图区:列表显示某一SCHEMA下的表、视图名称;字段列表区:显示某一表、视图的字段详细信息,如:字段名称,字段类型,长度,精度等;
5.4用户管理
5.4.1用户管理
1、新增、修改、删除用户帐号信息;
5.4.2角色用户
1、新增、修改、删除角色信息;
2、添加角色用户;
5.4.3角色访问
2、增加、修改、删除某角色的SCHEMA对象,及修改该SCHEMA对象的数据模式(业务应用和数据共享),部署模式(模拟和正式),删改控制开关;
3、修改某SCHEMA对象的DDL、DML权限,及对象权限(CRUD)、返回行数限制、删改影响行数控制;
5.4.4角色脱敏
3、新增、修改、删除某SCHEMA对象下的某表字段的脱敏规则;
5.4.5角色准入
3、列表显示某用户的IP黑白名单控制,并新增、修改、删除IP黑白名单;
5.4.6SCHEMA访问
2、详细设置该角色SCHEMA的ALTER、CREATE、DROP、OTHERDDL、DML的权限,可单选、多选、全选;
3、详细设置该角色SCHEMA的对象权限;
5.4.7SCHEMA脱敏
2、增加、修改、删除某SCHEMA对象的角色,及修改该角色下的数据模式(业务应用和数据共享),部署模式(模拟和正式),删改控制开关;
3、新增、修改、删除某SCHEMA角色下的某表字段的脱敏规则;
5.4.8准入控制
5.5访问控制
设置用户SCHEMA的DDL、DML权限和对象权限
5.5.1用户视图
2、增加、修改、删除某用的SCHEMA对象,及修改该SCHEMA对象的数据模式(业务应用和数据共享),部署模式(模拟和正式),删改控制开关;
5.5.2SCHEMA视图
2、详细设置该SCHEMA下某用户的ALTER、CREATE、DROP、OTHER、DDL、DML的权限,可单选、多选、全选;
3、详细设置该SCHEMA下某用户的对象权限;
5.6脱敏管理
设置敏感字段的脱敏处理规则。
5.6.1用户视图
5.6.2SCHEMA视图
5.6.3静脱设置
1、系统提供方便快捷的就地脱敏功能,在5.6.1和5.6.2所配置的脱敏规则,可以利用静脱设置模块,实现就地脱敏,并提供可视化的脱敏状态监控。
3、可新增、修改、删除静脱设置;
5.6.4状态监控
1、系统提供最多5个线程的并发处理静脱任务的能力,所有当前的静脱任务状态可在此页面可视化监控;
3、可即时刹除某一脱敏任务的执行;
5.6.5静脱历史
1、所有静脱的历史信息都可以在此页面查询到,包括即时的和定时的静脱历史;
5.7敏感发现
5.7.1敏感类型
1、列表显示敏感类型、模式、规则内容等信息;
2、模式有内置、自定义两种;
3、可新增、修改自定义敏感类型,规则内容为正则表达式的内容;
5.7.2发现设置
5.7.3发现结果
在5.7.2节所配置的发现设置,无论是即时执行还是定时执行,最终发现的结果在此展示。
2、可查看某个发现结果的具体内容情况等信息,列表显示发现明细:表名称、字段名称、敏感类型、命中率等;
3、对于所发现的敏感字段,可选择性的添加到某个用户或某个角色下的该SCHEMA的敏感字段设置里;
5.8审计管理
2、响应行为有:通过、拒绝、锁定;
5.8.2.访问审计
2、响应行为有:通过、拒绝、模拟拒绝、parser异常、执行异常等;
5.8.3删改控制
2、允许以高权限的用户帐号名义继续执行该被拒绝执行的sql语句;
5.9订阅管理
5.9.1订阅配置
1、列表显示每个管理员对事件订阅、SCHEMA订阅、数据库连接告警等订阅信息,邮件、短信订阅开关等;
2、邮件订阅开关、短信订阅开关、用户的状态的设置;
5.9.2邮件发送历史
5.9.3短信发送历史
5.9.4数据库事件历史
5.10管理员管理
5.10.1帐号管理
2、重置用户密码;
3、设置用户角色。
5.10.2角色管理
1、系统默认设置了系统管理员、普通管理员、普通用户三个角色;
2、可新增、修改、删除自建的角色;
3、角色权限有数据库管理、SCHEMA管理、用户管理、访问控制、脱敏管理、敏感发现、审计管理、订阅管理、管理员管理、系统管理、首页等;
5.11系统管理
5.11.1全局开关
设置系统全局的控制开关:部署模式、审计、SQL注入检查、SQL注入动作等开关,并设置数据库连接侦测频率及帐号的锁定策略。
5.11.2邮件服务配置
2、测试邮件发送服务;
3、设置邮件服务的启用、停止。
5.11.3短信服务配置
1、系统支持短信猫和阿里短信平台两种短信模式;
2、阿里短信平台模式,需输入信息:短信平台地址、appkey、签名、secret、模板代码等信息;
3、测试短信发送服务;
4、设置短信服务的启用和停止。
5.11.4保留策略配置
设置日志、订阅发送历史、告警事件历史的保留周期。
5.11.5系统应用配置
设置系统的LOGO和应用名称。
5.11.6日志管理
1、列表显示系统的所有操作记录日志:用户帐号、IP地址、操作日志、一、二级模块、操作内容等;
5.11.7连接管理
列表显示系统中活跃的数据库连接信息,并可以杀除某一连接会话。
5.11.8License管理
1、导出应用注册码;
3、显示许可过期日期和SCHEMA限制数量;
5.11.9系统资源
图表显示系统各资源的使用情况,包括cpu、内存、网络、磁盘等,可以以1小时、6小时、1天、7天为单位显示。
六、技术架构
DMStar数据资产保护和动态脱敏系统,采用全新的技术架构及理念,从数据库虚拟化、安全准入、访问控制、数据脱敏四个层面多维度全方位保护数据安全。
七、部署模式
8.1内部运维管控模式
8.2防范业务应用系统漏洞模式
8.3全业务模式
8.4集群支持
DMStar支持分布式集群,提升产品的可靠性、可用性,是真正的业务应用级的产品。
九、外部接入支持
9.1数据库管理工具支持
支持SQLworkbench、DbVisualizer、Squirrel等数据库管理工具,连接DMStarserver,实行数据库的管理操作。
9.2开发驱动支持
应用系统中可直接编程接入DMStar。
DMStar提供jdbc驱动支持,驱动包名为:dmstardriver-2.0.0.jar
驱动类名:org.deepdt.dmstar.driver.remote.DmstarDriver
连接串:jdbc:dmstar://IP:PORT/Schema
编程样例:
Class.forName("org.deepdt.dmstar.driver.remote.DmstarDriver");
Connectionconn=DriverManager.getConnection("jdbc:dmstar://192.168.1.210:8888/Schema","user","passwd");
十、静态脱敏实现方式
10.1ETL结合模式
与ETL(ODI,Kettle等)工具结合,通过ETL工具从DMSTAR抽取数据,再加载落地到开发、测试库等,此时的开发、测试库里的数据已经是按脱敏规则处理后的数据,无敏感信息,真正做到管理者和使用者的职权分离,防止敏感系统的泄露。
10.2就地脱敏模式
某开发库或测试库等含有敏感信息的表,需要进行脱敏处理,利用DMStar的静脱设置功能可实现就地脱敏,可视化监控脱敏进度,无需中间表、中间库的繁琐过程。