数据资源“一网共享”平台数据安全管理系统¶
方案概述¶
近年来数据操作安全事件层出不穷,数据的重要性、保护数据安全的迫切性逐渐凸显出来,国家为此先后出台了《信息安全技术网络安全等级保护基本要求》、《数据安全法》、《个人信息保护法》等相关的法律法规,这意味着企业数据的管理和保护面临着更严峻的挑战和更严苛的数据监管要求。在企业中,每天有大量的开发、运维人员会在网络上进行操作、管理、维护数据等行为,如何降低操作风险,保护业务数据安全成为企业需要亟待解决的问题。基于此,企业对于如何强化数据安全管控,如何避免数据损毁、数据误删、数据篡改以及数据泄露等事故的发生,如何更好的保护数据安全产生了迫切诉求。
为了高效规避此类问题,本项目计划租赁一套数据库安全管控系统,实现事前审核、事中阻止、事后审计追溯,以达到数据库操作访问统一管理,实现防泄露、防误删、防篡改、防损毁的数据库操作管控应用效果;全面保障运维过程中的安全管理需求,防止数据泄漏和高危事件的发生,提高运维管理精准度,保障信息系统数据的安全。
架构设计¶
技术架构¶
省数据库安全管控系统技术架构分三层,接入层进行数据接入目前已经接人30种数据库,未来将全面接入市场上的所有数据库。平台层搭载了工作台、SQL窗口、数据资产、数据库维护、安全中心等核心功能模块;应用层满足多种数据库操作管控场景,数据库统一连接,权限管控,数据保护,数据防误删,防篡改,防损毁,防泄露等场景。
部署架构¶
如左图所示,在数据库服务器区,部署三台虚拟机,作为数据库管控平台的运行服务器。将所有需要管控的数据库实例作为资源加载到数据库管控平台上,并开启Web服务。此时,在局域网内的,或者通过跳板机、VPN等方式登录的开发、运维人员都可以通过数据库管控平台页面进行数据库操作和管理。
功能要求:¶
数据库兼容¶
Oracle、MySQL、Sql Server、MariaDB、DB2、DB2 iSerise/AS400、OceanBase-MySQL、OceanBase-Oracle、Kingbase、TIDB、达梦、GoldenDB、PostgreSQL、GBase 8a MPP、GBase 8s、GaussDB(for openGauss)、ClickHouse、Vertica、TencentDB for MySQL、TencentDB for PostgreSQL、Hive、ADB 2.0-MySQL
调试窗口¶
支持函数、存储过程、包、包体调试(Oracle)
SQL窗口¶
①联想 ②格式化 ③常用SQL ④支持select for update等语法 ⑤支持快捷键F5、F8等 ⑥支持语句中断执行 ⑦支持用颜色明显区分不同环境 ⑧执行高危语句二次弹窗提醒 ⑨支持多条查询语句或者多类型语句(比如一条update一条select)依次执行 ⑩支持多结果集显示,执行计划和结果集可以分别查看 ⑪支持提交回滚高亮 ⑫支持一建复制行、复制列数据
主流数据库Oracle、MySQL的功能支持¶
可视化功能¶
①均支持:创建表、查看表结构、编辑表结构、管理表(删除表、重命名、清空表)、导出、导入、对象属性 ②Oracle对象支持直接编译、编辑原语句等操作 ③视图支持直接打开视图查看数据
可编程对象¶
①支持查看对象语句 ②支持视图、物化视图、序列、存储过程、函数、触发器、同义词、定时任务、包、包体、Database Link、用户、角色、事件
数据库管理工具功能¶
DBA工具¶
批量编译无效对象 Oracle回收站 会话窗口
首选项设置¶
支持自动/手动提交切换,数据库参数(SqlServer),日期/时间/日期时间显示格式
结果集¶
结果集编辑¶
①支持结果集编辑,均支持增删改 ②支持无主键的结果集编辑 ③支持时间等特殊字段的编辑使用选择器 ④支持多条数据同时修改 ⑤支持结果集同时执行编辑、新增、删除等操作
字段查看¶
①支持blob和clob字段的直接查看和变更
权限管控¶
操作权限管控¶
①支持三十余种SQL操作动作的权限授予和申请 ②支持导出权限授予和申请 ③支持SQL操作动作的设置和自定义分组(内置查询、变更、高危、管理、导出等分组维度) ④支持实例、schema、表、可编程对象、敏感列维度的权限管控 ⑤支持权限模板 ⑥支持权限策略复 ⑦按模板授予权限时支持按组织进行授予 ⑧支持实例、schema、表访问管控功能,被访问管控保护的实例可以实现任何人禁止访问 ⑨支持单实例访问频次控制 ⑩支持字段脱敏和表脱敏权限的授予和申请
页面权限管控¶
①支持单独页面权限的权限授予和申请 ②页面权限控制到功能级 ③支持页面权限的权限组自定义
敏感数据和水印¶
敏感数据管理¶
①支持动态脱敏 ②支持识别规则和脱敏规则自定义 ③支持敏感数据分级分类 ④支持敏感数据的智能扫描功能 ⑤支持增量添加和全量覆盖两种扫描方式 ⑥支持多种脱敏算法,包括:遮盖、哈希、加密、变换、随机替换、固定替换等 ⑦支持敏感数据导入
水印¶
①结果集水印 ②结果集水印参数自定义设置
任务管理¶
数据导入/导出¶
①支持库表结构导出任务 ②支持dump文件导出
定时任务¶
①支持SQL语句定时执行 ②支持SQL语句周期性执行 ③支持执行结果的输出
脚本管理¶
支持脚本的线上统一管理,多人共享等功能
操作备份和误操作恢复¶
①支持数据库操作备份,能够恢复误操作丢失或变更的数据 ②目前支持Oracle数据库,可以根据现场需要进行其他数据库适配 ③数据库本身无需开启其他配置
告警/高危配置¶
告警¶
①支持告警功能 ②支持告警配置的自定义设置 ③支持告警消息接收渠道的配置 ④支持告警消息模板内容的自定义配置
高危¶
①支持高危配置功能 ②支持高危配置的自定义设置
用户管理¶
①支持AD域用户同步及登录 ②支持双因子认证 ③支持多域,多组织管理 ④支持某用户隶属于多组织 ⑤支持用户密码规则自定义,包括自定义密码是否包含大小写、数字、特殊字符等,自定义密码长度 ⑥支持密码有效期设置 ⑦支持密码试错次数及锁定时长设置 ⑧支持查看用户会话,查看用户在线数、在线状态、最后登录ip、最后登录时间等整体情况 ⑨支持会话超时保护 ⑩支持批量导入用户
审计¶
①SQL执行操作记录 ②图表化SQL审计展示 ③支持显示字段的自定义设置,并且可以按显示字段进行进行快速筛选 ④支持快速权限追踪直接查询权限来源 ⑤支持实时权限是审计 ⑥支持按操作进行图形化统计 ⑦支持平台的所有操作留痕 ⑧从操作记录,定位权限追踪 ⑨所有工单数据展示 ⑩按时间、操作人、热点对象统计操作动作及操作次数
消息¶
①支持消息自定义设置 ②支持消息接收渠道的配置,目前兼容的消息接收渠道:邮件、短信、企业微信等 ③支持消息模板内容的自定义配置 ④支持消息接收人员配置
复核¶
①支持同步复核和异步复核功能 ②支持复核实例、动作、人员等自定义配置
密码安全管理¶
①支持数据库账户和密码统一管理功能 ②支持特权账户的账户密码修改及周期性下发 ③支持数据库账户密码强度检测
快捷变更¶
①支持权限范围内的快捷变更创建 ②支持用户可视化、场景化的数据操作的快捷执行
其他¶
①脚本定时任务同步实例的数据库信息 ③支持通过脚本进行系统的备份和恢复
审批流程¶
①支持审批流程完全自定义 ①申请SQL语句或者脚本工单后,系统代为执行语句,防止人工执行出错 ②需要选择可执行时间,执行者只能在可执行时间进行执行
业务系统管理¶
①支持按业务系统管理数据库 ②按业务系统进行权限授予和申请
规则设置¶
安全规则¶
①支持单次select SQL最大行数的全局和个人配置 ②支持单次update SQL 最大行数的全局和个人配置 ③支持单次delete SQL最大行数的全局和个人配置 ⑤支持单次insert SQL最大行数的全局和个人配置 ⑥支持文件加密开关配置 ⑦支持单次查询数据量大小配置 ⑧支持单实例访问次数上线设置 ⑨支持复核模式配置
系统规则¶
①连接超时时间设置 ②默认SQL窗口结果集每页行数设置 ③BLOB可预览文件大小设置 ④双击打开执行SQL开关 ⑤脚本变更并行线程数设置 ⑥clob查询大小设置 ⑦结果集缓存时间设置
实例管理¶
①支持单实例设置连接数 ②支持单实例设置负责人,目的是为了进行审批
功能场景¶
功能场景一:工作台(运维主界面)¶
集中展示登录用户权限下的数据库资源、操作信息、告警信息、工单审批信息等。通过数字和列表等方式展示相关信息。
提供快捷菜单导航到对应的功能板块,如从工单审批跳转到流程审批页面。
功能场景二:操作台(SQL窗口)¶
提供执行SQL操作的主要工作界面,替代PL/SQL等数据库客户端工具。
支持树状结构展示实例树、schema、表、可编程对象等数据;
支持多SQL窗口;
支持通过不同的颜色显示不同的实例环境;
支持SQL语句的执行、提交、回滚等功能;
支持右键功能,查看SQL执行计划;
支持右键功能,查看可编程对象源码,提供编辑、编译等功能;
支持智能联想功能,自动联想语法、对象名称、字段名等;
支持SQL美化功能,能够自动格式化SQL语句;
支持常用SQL功能;
支持便捷常用SQL调用;
支持结果集直接编辑和对编辑后的SQL语句提交;
支持显示SQL执行时间以及返回数据行数。
功能场景三:用户管理与用户登录¶
提供平台用户管理功能,包括用户数据导入、添加用户、编辑用户信息、配置用户组以及进行用户密码的重置,对密码强度进行检测等等。
功能场景四:细粒度权限管控¶
提供两个层面的细粒度权限管控,包括:
(1)平台操作维度的细粒度管控,即用户可以看到哪些菜单及功能
(2)数据库操作维度的细粒度管控,即用户能够做哪些数据库操作。其中又细分为:
A.操作对象的细粒度管控,包括实例、schema、表、可编程对象、列五个不同的粒度:
B.操作类型的细粒度管控,包括DML、DDL、DCL等各类操作的细粒度管控,按照操作分组为:查询、变更、高危、管理、导出等类别:
C.操作结果集和操作结果数量的细粒度控制,防止执行批量数据库的SQL操作影响数据库性能。
D.操作分时的细粒度控制,管控在重要交易时段的操作数量及类型。 用户管理支持与公司的AD域对接,支持直接从AD域获取用户数据。
功能场景五:访问控制与动态提权¶
支持自上而下的访问控制授权、分级授权以及自下而上的单独提权操作。
1)自上而下的访问控制授权
支持数据库数据库实例、schema、表的访问管控功能,用户根据需要自由配置管控策略,用以控制在某段时间内某实例、schema、表不允许执行某些操作。
支持维度有:实例、schema、表;
支持配置周期性策略;
支持不同维度配置不同的管控策略;
支持配置不同的特例放行的SQL操作;
2)分级授权
支持管理员将权限授予A(Team Leader),A可以将自己所拥有的权限再次分配给B(Team Member)。
3)动态提权
当执行SQL语句受到权限限制的时候,支持在消息页面提供提权按钮,动态执行提权申请。提权申请包括两类,单条语句的单次提权或者同类语句(脚本)的永久授权。
功能场景六:数据资源管理¶
提供对数据库资源的综合管理,包括数据资产全局查询、数据库实例添加和录入;实例管理;业务管理;脚步库管理等方面的功能。
1)数据资产全局查询
快捷搜索用户拥有权限的全部实例、SCHEMA、表、可编程对象、功能菜单等信息。
2)实例管理
提供实例信息增删改查的页面,可切换实例列表/Schema列表可以查看对应的资源。提供对实例的连接配置,添加数据库实例IP地址、连接账号及密码等。
提供实例的运行环境信息设置,包括生产、测试、其他等。
3)业务管理
支持创建业务分组,并将相应的实例分配到业务系统中。
4)脚本库管理
提供脚本库管理功能,支持对脚本的审核(语法、越权操作等)、脚本存储、脚本共享等。
功能场景七:数据安全管理(安全中心)¶
数据安全管理解决数据库在操作过程中可以设计的数据访问、数据泄露、数据导出等方面的问题。主要包括:
1)数据分级分类管理
支持用户设置分级分类规则,利用该规则进行数据分级分类的智能标注;
支持按照不同等级手动设置数据的级别,便于进行敏感数据管理与配置。
2)数据动态脱敏
支持内置不少于12种常见的脱敏算法,包括针对姓名、电话号码、银行卡号、身份证、邮箱等常见个人信息数据的默认算法。
支持按照配置的规则进行数据库全局的智能脱敏扫描,标注可能的脱敏列。
支持手动设置脱敏列及脱敏算法,展示脱敏后效果。 在数据查询时,自动将用户不具备查看条件的数据按照脱敏规则展示。
3)水印防拍
支持设置是否对结果集设置水印;
支持对水印的内容(包括姓名、ID号、手机号、机构名称、邮箱等)进行设置;
支持对水印的密度、模式进行设置。
4)导出管控
支持对导出进行权限管控,有导出权限才能执行导出。
支持对查询的结果数据的导出:
支持多种导出格式:TXT、SQL、EXCEL、CSV
支持导出本页或者所有页数据
支持所见即所得,如果页面数据为脱敏,则导出数据为脱敏
支持导出数据加密
5)安全配置
提供系统安全参数配置
提供数据库操作备份配置
提供告警信息配置
功能场景八:密码安全管理¶
用户可以在此功能模块进行数据库账号和密码的统一管理,同时可以对特权账户的密码进行定时的更新并下发,定期修改安全度高的密码减轻安全人员维护压力的同时满足监管和安全要求。
统一的密码安全管理页面
密码强弱识别
特权账户的密码定期自动更新功能
验证密码连接的正确性
功能场景九:全过程操作审计¶
1)支持全量的SQL操作审计,对于所有通过平台发起的SQL操作,都会自动留痕,包括成功执行的SQL操作和执行失败(被拦截或语句异常)的SQL操作,支持按各个维度进行筛选和查询。
2)支持图表化的SQL操作统计,对于常见的审计场景,支持按照时间、操作人、热点对象等不同维度进行柱状图、折线图、饼状图等可视化图表审计。
3)支持全方位操作统计,平台支持对于平台集成的所有应用执行的所有操作均会留痕,满足合规审计的要求。
4)支持权限的实时审计,方便用户排查当前时间某实例或者某schema能够访问的所有人的所有权限,协助管理人员进行权限管控和实时权限追查。
5)支持告警功能,用户通过设置相应的告警策略,在警告出现时能够通过消息提醒和邮件、短信、企业微信等不同渠道进行实时警告。
功能场景十:数据库运维工具¶
数据库运维工具是为DBA提供的一系列运维工具的集合,主要包括:
1)无效对象编译
2)支持自动采集无效的可编译对象,便于DBA逐一或者一次性编译对象。
3)会话查询窗口
4)支持将所有通过平台提交的SQL语句的会话及其状态展现出来,便于DBA及时中断阻塞数据库的会话以及及时清理死锁会话。
5)表数据闪回
6)对于执行Drop操作删除的表,通过数据库的flashback区进行数据库的快速回退,及时找回数据,简化数据闪回操作,保障数据完整性。
7)误操作回退
8)对于insert、update、delete、truncate操作进行备份,如果出现误操作,支持快速回退。支持按照单条记录或者批量操作进行回退。
9)数据导入与导出
10)支持数据库的后台导出与导入,便于及时备份数据,为其他部门准备数据。
11)任务管理
12)支持创建导出、导入、SQL执行三种任务,并对任务完成情况进行通知。
功能场景十一:应用开发与运维工具¶
对于应用的开发测试及运维管理人员,平台提供了相关功能用于日常管理:
1)数据快捷变更
对于某些需要需要权限授予及参数配置的任务,可以通过快捷变更的方式,将SQL语句的执行编辑为一个执行任务,成为卡片或者菜单,授权给对应的部门人员执行,从而避免数据库访问权限造成的问题,也减少手动操作可能导致的异常。图示如下:
2)脚本仓库申请
对于常用的、周期执行的任务(如生成日报表等)可以申请脚本仓库,经过审核保存到脚本仓库,通过定时任务自动执行或者共享给其他人员使用。
功能场景十二:工单及流程平台对接¶
对于工单申请、操作执行以及工单审批等提供流程引擎引导; 支持与公司的流程平台对接,实现流程统一审批与审计。
1)我的申请
实现流程的发起,主要包括临时提权申请、脚本审核申请、操作任务发起等。
2)我的执行
显示已经被审批通过,且需要被执行的工单,如执行脚本。
3)我的审批
由其他人提交,需要自己审批的脚本。
定制化改造要求¶
性能要求¶
(1)平台的每秒交易处理能力(TPS)>= 30
(2)查询响应时间<=3s
(3)网页查询响应时间<= 3s
服务要求¶
租赁期限:1年。
质保要求:软件交付验收后提供1年免费质保服务,质保期内,免费提供软件故障处理、软件版本升级、bug修复等服务。
培训要求:质保期内,免费提供培训服务,次数不限。
其他要求¶
平台需支持国产化环境部署。
平台建设需满足网络安全等级保护三级要求。
平台需要满足商用密码要求,按照国密要求进行平台建设。