前言
在建设篇中,我们提到江苏人社对一体化管控平台明确了需求:
第一,统一人员访问入口,所有人员仅通过一个平台完成对数据库的全部操作;
第二,强化对数据库运维人员的权限管理,全面实现对第三方人员违规操作、权限滥用等风险进行事前严格的权限管控,事中的全流程行为追踪,事故发生后精准溯源;
第三,替代日常运维工作中使用的 Navicat、PL/SQL 等工具,规避使用第三方软件的安全风险;
第四,细化对数据库及人员行为的操作审计,确保能够精准溯源;
第五,运维中的三权分立,将数据的设计者开发人员,执行者数据库管理人员,监督者安全运维人员分区而治相互牵制,减少单一角色对数据库系统的过度控制,确保不同职能之间的协调合作,以实现数据库数据安全的最优状态;
第六,对接江苏省人社一体化信息平台,借助权限系统、消息中台、工单系统实现一体化系统的反向赋能管控平台构成一个强耦合一体化,实现操作人员日常工作顺畅衔接。
本篇文章,我们就具体来讲讲江苏人社是如何通过 CloudQuery(以下简称「CQ」)来实现以上需求的,以及最终的建设效果。
首先,我们来看下江苏人社的数据库基本情况。江苏人社内部使用的数据库类型众多,涵盖 Oracle、MySQL、Redis、SQLServer、DamengDB、PostgreSQL、TDsql、达梦MPP等,预估CQ系统用户人数超过400+,同时在线人数超过100人,纳管数据库数百个,数据库用户上千个。
统一入口 严控数据库访问路径
如上述,江苏人社在建设统一数据管控平台之初,最大的目标就是摒弃其他所有的第三方操作、管控工具,仅通过一个 CloudQuery 实现对人员的所有管控。
CloudQuery 作为一体化数据库安全管控平台,其一大优势特性便是「统一人员访问入口」。通过纳管多类型数据库,实现一个 web 网页即可访问数据库、进行数据操作的能力。「统一」能力主要体现在四个方面:
- 统一数据库客户端: 多种数据库类型统一管理,在一个平台上实现数据操作,无需繁复切换与跳转
- 统一身份认证: 打通江苏人社一体化信息平台登录系统,实现统一人员身份认证管理
- 统一授权管理: 对主帐号集中授权管理,设定用户可以访问哪些资源的授权,确保执行最小授权原则
- 统一监控审计: 通过智能化监控审计引擎,全面审计用户在平台上的操作行为
成果:摒弃了其他第三方数据库工具,CloudQuery 实现访问入口收敛,所有人员的数据库操作仅通过 CloudQuery 进行。
对接一体化信息平台 推进业务协同
人社业务内容繁杂,使用系统类型多,要深入推广 CloudQuery 在江苏人社内部的使用,必须打通 CloudQuery 与人社一体化信息平台的对接,实现业务协同。
针对江苏人社业务情况,提升人员日常工作效率,CloudQuery 完成了与其内部的四类系统对接:
- 一体化平台单点登录对接: 打通一体化信息平台与 CloudQuery 的登录系统,用户通过一体化平台菜单即可直接跳转至 CloudQuery 进行操作,同时,实现扫描二维码完成身份认证登录平台。
- 一体化平台工单系统对接: 用户可在CQ系统中申请权限,一体化平台工单系统接收申请,审批完后的数据库操作推送至 CloudQuery 平台,CQ 自动接收审批结果,并进行相关处理,完成后将数据库操作变更执行结果返回给工单系统。
- 一体化平台统一日志系统对接: 同时在 CloudQuery 平台和统一日志管理系统保存数据库操作和平台日志。
- 用户消息平台对接: 对接用户企业微信消息,将平台流程审批等一系列消息提醒发送至当事人企业微信。
成果:通过与一体化信息平台的多重对接,打破信息孤岛,实现用户业务协同。
细粒度权限管控 明确人员职责
CloudQuery 的权限管控支持权限-角色-用户的授权体系,江苏人社针对内部的项目组情况,主要设置了两类角色。
一类为普通工程师,主要操作是查询,可在权限和监测范围内进行数据操作;另一类为项目组组长,针对每个项目组设置一名类似「DBA」的角色,这类用户会拥有一些高敏感权限,如 DDL 操作,同时,这类角色也是连接权限的审批人,组内普通用户的提权由其进行审批。
简而言之,对于这两类不同的角色,江苏人社会对使用人群进行严格划分,从表级别操作(DML/DDL/DQL)、查询限时/限次/限量、导出、越权阻拦、敏感信息脱敏、行过滤等角度,分别赋予不同的权限,实现不同的操作权限管控。
此外,针对各类权限,CloudQuery 搭载流程审批,用户可针对具体权限,如数据操作权限、数据订正权限、导出权限、脱敏权限、高危权限等,提出权限申请,审批人可通过江苏人社一体化信息平台审批系统完成审批,从而开通对应权限。
成果:通过角色区分,强化了对开发运维人员的权限管理,实现对第三方人员违规操作、权限滥用等风险进行事前严格权限管控、事中全流程追踪和越权提醒。
自研数据库操作客户端 规避版权风险
通常,不同的数据库对应着不同的操作客户端,如 Navicat、PL/SQL 等,这种第三方软件对于单位来说潜藏着安全风险。
CloudQuery 在平台内置了自研的数据库操作客户端,在纳管多类型数据库的同时支持各数据库特性元素,如表、视图、物化视图、同义词、存储过程、函数、包、包体、序列、触发器、索引、DBlink等。
同时,在编辑器中可实现事务模式切换、执行终止等操作,执行语句支持关键词、数据库元素自动提示、失败语句高亮展示,每次执行支持查看当前执行语句、结果、耗时等信息。
除此之外,针对江苏人社内部大批量数据导出需求,CloudQuery 加强了大批量数据导出能力。出于不对用户数据进行任何处理的设计理念,在导出时,CloudQuery 直接在内存操作数据,不存在数据缓存问题,提升导出效率的同时大幅提升数据安全。
成果:通过 CloudQuery 自研的数据库操作客户端,替代了日常运维工作中使用的第三方软件工具,有效提升开发运维人员数据操作效率。
全方位行为审计 实现事后精准溯源
依托于 CloudQuery 平台内置的动作埋点,实现了人社用户从登录到登出每个动作都可追踪、可溯源。
审计大屏页面展示平台用户行为概览和安全趋势。审计明细可查看具体操作用户、操作ip、执行语句等信息,精准定位问题用户,实现违规行为事后精准溯源。
至此,江苏人社完成了对开发运维人员的全方位管控,真正做到事前用户权限分配、风险用户提前告警、风险动作及时告知、违规行为事后溯源。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。