CN116155559A - 一种面向隐私计算的可扩容数据细粒度访问控制系统 - Google Patents
一种面向隐私计算的可扩容数据细粒度访问控制系统 Download PDFInfo
- Publication number
- CN116155559A CN116155559A CN202211707128.2A CN202211707128A CN116155559A CN 116155559 A CN116155559 A CN 116155559A CN 202211707128 A CN202211707128 A CN 202211707128A CN 116155559 A CN116155559 A CN 116155559A
- Authority
- CN
- China
- Prior art keywords
- database
- service
- message
- data
- strategy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明通过网络安全领域的方法,实现了一种面向隐私计算的可扩容数据细粒度访问控制系统。通过设置管理中心服务、高可用代理、数据代理服务三个部分构成一个完整的功能系统;管理中心服务由管理员管理,设置管理认证用户、管理安全防护策略,以及将策略规则下发到数据代理服务和高可用代理的下发规则策略三个功能模块;高可用代理通过代理端口转发给数据库代理服务;数据代理服务串行在业务系统跟数据库之间控制业务系统对数据库的访问。本发明提供的系统通过动态增加数据库代理服务的方式,实现了对高并发数据库请求下的,数据访问控制能力的横向扩展;通过对SQL进行深度解析实现更加精细的业务系统或数据库管理员对数据库的访问控制。
Description
技术领域
本发明涉及数据安全技术领域,尤其涉及一种面向隐私计算的可扩容数据细粒度访问控制系统。
背景技术
在隐私计算平台处理数据之前,常常需要缓存待处理数据到本地数据库中,而在运维过程中,这些敏感数据可能被数据库管理员或三方数据库运维人员进行访问。本系统串入到隐私计算平台与数据库之间,通过对数据库请求的访问控制,实现对敏感数据的安全防护。另外隐私计算平台常常需要部署在开放网络上,与异地对方隐私节点进行数据交换计算,这样就容易受到来自互联网的攻击和入侵,数据安全存在较大风险。而本系统也可以通过访问控制与异常行为分析解决此类问题。
目前数据库访问控制技术,主要采用单机或主备方式串入在业务系统与数据库之间,对每次数据库请求进行授权判断。这种方式在负载变大时,需要手动增加新的控制节点,无法实现快速扩容,而本系统支持云化部署,并可通过动态扩容支撑大量的数据库请求的访问控制;另外一方面,现有访问控制策略主要为目的IP地址、数据库名、表、字段,但缺少源IP地址、时间窗口等更细粒度的访问控制;最后本系统支持传统数据库、大数据库等多种数据库协议的深度解析,并且具有攻击脚本检测能力,防止数据使用不合规、恶意窃取等安全事件发生。
目前的数据库安全防护技术存在以下不足:
1)当数据库请求访问负载突然增大后,往往无法及时扩容来支撑大量的访问请求。
2)对用户连接数据库请求很难做到更加细粒度的访问控制,如:数据库字段,源IP地址、时间维度的控制等。无法满足灵活多变的访问控制需求。
3)目前此类系统支持的数据库协议相对比较少,而且不具备深度协议解析与异常行为分析能力。而本系统支持很多主流的关系型数据库、非关系型数据库协议,以及大数据平台协议。同时通过协议的深度解析,实现对内容还原,并基于内置的异常行为检测脚本,实现对不合规操作,以及攻击行为进行告警。
发明内容
为此,本发明首先提出一种面向隐私计算的可扩容数据细粒度访问控制系统,通过设置管理中心服务、高可用代理、数据代理服务三个部分构成一个完整的功能系统;其中管理中心服务由管理员管理,设置管理认证用户、管理安全防护策略,以及将策略规则下发到数据代理服务和高可用代理的下发规则策略三个功能模块;
所述高可用代理部分用可横向扩展的技术部署方案,数据库管理员和业务系统发送接收访问数据库的数据包,通过代理端口转发给数据库代理服务;
所述数据代理服务设置代理层和控制层结构,串行在业务系统跟数据库之间,接收业务系统访问数据库资产的请求报文,分析报文内容,结合安全访问策略内容来控制业务系统对数据库的访问。
所述高可用代理服务的具体架构为:采用可横向扩展的部署方案处理高并发的数据请求,实现策略解析、数据请求转发,所述策略解析具体过程为:解析管理中心服务下发的端口映射策略规则,根据策略规则中的内容,启动端口映射代理进程;所述数据请求转发具体过程为:数据请求转发按照代理端口映射规则,将接收的数据请求转发到目的主机的端口上,完成数据请求转发;
同时在高并发负载情况下,通过监控代理服务的keepalived节点负载情况,动态增加keepalived节点和代理节点,并将新的大量数据库连接请求转发到新增的数据代理服务节点上,实现数据代理服务对高并发的数据库请求的支持;
通过数据代理服务对业务系统访问数据库的报文进行分析实现更细粒度的数据访问控制,并结合细粒度的访问控制策略,更加精细地控制到表字段级别、时间维度;
数据库代理服务接收业务系统连接数据请求报文后,解析报文内容,提取报文中的sql脚本、操作用户。之后再解析sql脚本,获取脚本中操作数据库指令、目标数据库、表、字段信息,并结合管理中心服务下发的安全访问控制策略控制数据库访问。
所述动态增加keepalived节点和代理节点,并将新的大量数据库连接请求转发到新增的数据代理服务节点的具体方法为:首先将数据代理服务封装成Docker容器:将keepalived服务封装到容器中,以便在增加keepalived节点的时候快速部署;之后发布Docker容器:将容器发布到云平台,供下一步动态增加代理服务节点使用;之后设定keepalived负载指标:对keepalived节点设置负载值,当节点的负载数据接近这个指标值时,说明当前节点压力较大,不再接收新的连接请求;接着循环检查keepalived负载情况:高可用代理服务通过循环检查keepalived节点的负载情况,判断是否达到了负载要求,当每个节点都达到了负载指定的数值,需要新增keepalived节点,分担连接请求压力;之后增加代理服务节点:从云服务上下载Docker容器,启动并部署新的keepalived节点;最后设置转发规则:将新增的数据库连接请求分配到新增的keepalived节点,分担代理服务的连接压力。定期循环检查keepalived节点的负载情况,确保代理服务稳定工作。
所述结合管理中心服务下发的安全访问控制策略控制数据库访问的具体方法为:在接收业务系统请求报文后,通过十二个步骤实现,其中步骤一为代理服务首先接收业务系统连接数据请求报文,读取报文的全部内容;步骤二为解析报文内容:得到全部的报文内容后,对报文内容进行解析,得到数据库请求的内容;步骤三为提取操作数据库信息:通过对请求数据库内容的分析,提取报文中的sql脚本、操作用户,解析sql脚本,获取脚本中操作数据库指令、目标数据库、表、字段信息;步骤四为遍历安全访问策略:循环遍历中心服务端下发的安全防护策略,用数据库请求信息中的内容对策略进行匹配;步骤五为通过用户名筛选策略:通过请求信息中的用户名进行策略匹配;如果匹配进行下一步判断;步骤六为通过数据库名称筛选策略:通过数据库名称筛选:通过请求信息中的数据库名称对当前策略进行筛选,如果符合进行下一步筛选;步骤七为通过表名称进行筛选策略:通过请求信息中的表名称对当前策略进行筛选,如果匹配进行下一步筛选;步骤八为通过字段名称筛选策略:通过请求信息中的字段内容进行策略筛选判断是否匹配,如果匹配进行下一步验证;步骤九为验证策略是否匹配:对通过步骤五到步骤八筛选匹配出来的策略进行验证,判断是否匹配,如果匹配,进行下一步验证;步骤十为验证时间是否匹配:根据当前时间验证策略中要求的时间是否匹配,如果匹配,当前策略命中,将当前策略中规定的放行或阻断结果作为验证结果返回到代理层,进行处理;步骤十一为生成阻断报文:如果策略阻断当前请求,则生成阻断报文;并将阻断报文返回给业务系统;步骤十二为发送原始报文都给数据库:如果策略放行当前请求,则将原始报文发送到数据库,完成业务请求;
所述数据代理服务作为数据库代理服务,串行在业务系统跟数据库之间,内部设置有代理层和控制层层两个模块,其中代理层负责解析请求报文,将报文中的信息提供给控制层,得到控制结果后根据防护要求生成阻断报文、重新组装脱敏报文,反馈给业务系统、数据库系统,完成烦请访问控制;控制层负责分析用户操作数据库的行为,根据安全策略先认证登录用户操作的合法性,如果用户合法,再对用户操作行为进行安全验证,通过安全验证后,再进行脱敏检测,最后在对操作脚本进行高危脚本检测,验证脚本是否存在违规操作。
所述代理层功能具体为:数据请求报文解析、生成阻断报文;其中数据请求报文解析功能接收业务系统请求报文,根据每个数据库通信报文协议,解析业务系统请求报文结构,读取报文中的操作信息,这些信息提供给控制层进行处理;生成阻断报文功能在得到控制层反馈的阻断结果后,根据结果内容,遵循数据库通信协议,模拟数据库端生成错误报文,新的报文信息代理层,返回给业务系统,阻断业务系统请求数据库的报文。
所述控制层功能具体为:用户认证、访问控制、高危脚本检测、生成访问日志;其中用户认证功能以独立于数据库服务上的用户认证对登录用户做认证,不参照数据库用户内容,完全按照管理员设置的安全策略进行验证,具体流程如下:数据库代理服务接收到业务系统请求数据库的报文后,解析报文,提取操作数据库的信息,遍历本地策略,分别通过访问用,目标数据库,表,字段信息作为筛选条件匹配本地安全访问策略,找到策略后,再验证当前时间是否跟策略匹配,如果匹配,则将策略要求的处理结果发送给代理端处理本次请求;如果未找到匹配策略,按系统默认策略规则处理;之后高危脚本检测:检测数据库请求脚本的安全性,对存在着sql注入,拖库,撞库等危险操作行为进行检测,并将检测结果发送给代理层对请求报文进行阻断,保护数据库数据安全;接着生成访问日志:生成数据库访问日志,将这些内容形成结构化数据缓存到本地。
本发明所要实现的技术效果在于:
本技术方案采用了高可用的负载均衡技术,结合端口转发技术,通过动态增加数据库代理服务的方式,实现了对高并发数据库请求下的,数据访问控制能力的横向扩展。
本发明通过对SQL进行深度解析,得到库,表,字段等信息,可以做到控制用户对库、表、字段操作,并提出了源IP地址,时间等更多维度进行访问控制,可以做到在不同时间点的访问控制,实现了更加精细的业务系统或数据库管理员对数据库的访问控制。
本系统支持多种数据库报文协议深度解析,包括关系型数据库、非关系型数据库、工业时序数据库、新兴的大数据库、以及区块链的通信协议解析。同时系统内置了高危检测脚本,实现了对攻击行为的访问阻断与告警。
附图说明
图1控制方法构成的系统的具体流程;
图2高可用代理附图架构;
图3动态增加keepalived节点和代理节点方法;
图4结合管理中心服务下发的安全访问控制策略对数据库访问的控制方法
具体实施方式
以下是本发明的优选实施例并结合附图,对本发明的技术方案作进一步的描述,但本发明并不限于此实施例。
本发明提出了一种面向隐私计算的可扩容数据细粒度访问控制系统。
本方法通过设置管理中心服务、高可用代理、数据代理服务三个部分构成一个完整的功能系统。
其中管理中心服务设置管理认证用户模块负责维护访问数据库的用户、管理安全防护策略,以及将策略规则下发到数据代理服务和高可用代理的下发规则策略模块;
高可用代理:用可横向扩展的技术部署方案,解决数据高并发问题,接收访问数据库的数据包,通过代理端口转发给数据库代理服务;
数据代理服务:作为数据库代理服务,串行在业务系统跟数据库之间,可通过增加代理服务结点的方式满足高并发请求。数据代理服务负责接收业务系统访问数据库资产的请求报文,分析报文内容,结合安全访问策略内容来控制业务系统对数据库的访问。
首先管理员在管理中心服务上配置安全访问策略,然后这些策略会下发给高可用代理与数据代理服务。数据库代理服务对数据库请求进行协议解析,并提供解析后的内容给控制层来检测业务系统对数据库的操作权限,根据检测结果来决定是将报文转发到数据库还是阻断请求。数据代理服务在控制过程中还收集数据库访问日志,通过消息队列发送给审计服务。具体流程如图1所示。
数据代理服务:作为数据库代理服务,串行在业务系统跟数据库之间,功能有:策略解析、数据请求报文解析、生成阻断报文、用户认证、访问控制,高危脚本检测、生成访问日志、日志外发。首先数据库代理服务的策略解析功能,将中心服务下发的安全访问策略解析加载,提供给控制层用于控制访问层接收的数据库请求。1)代理层:负责解析请求报文,将报文中的信息提供给控制层,得到控制结果后根据防护要求生成阻断报文、重新组装脱敏报文,反馈给业务系统、数据库系统,完成烦请访问控制。2)控制层:负责分析用户操作数据库的行为,根据安全策略先认证登录用户操作的合法性,如果用户合法,再对用户操作行为进行安全验证,通过安全验证后,再进行脱敏检测,最后在对操作脚本进行高危脚本检测,验证脚本是否存在违规操作。经过上述流程检测,得出检测结果,并将结果反馈给代理层,对请求报文做下发、阻断、修改等操作。
代理层功能:数据请求报文解析、生成阻断报文。1)数据请求报文解析:接收业务系统请求报文,根据每个数据库通信报文协议,解析业务系统请求报文结构,读取报文中的操作信息,如:用户名,数据库名,请求SQL,数据库操作类型等(目前支持的数据库有:mysql、mariadb,OceanBase、gauss、mongodb,oracle,postgresql,达梦、sqlserver、db2、hive、impala、hdfs),这些信息提供给控制层进行处理;2)生成阻断报文:当得到控制层反馈的阻断结果,根据结果内容,遵循数据库通信协议,模拟数据库端生成错误报文。新的报文信息代理层,返回给业务系统,阻断业务系统请求数据库的报文。
控制层功能有:用户认证、访问控制、高危脚本检测、生成访问日志;1)用户认证:对登录用户做认证,认证用户身份的有效性。该认证独立于数据库服务上的用户认证,不参照数据库用户内容,完全按照管理员设置的安全策略进行验证。具体流程如下:数据库代理服务接收业务系统连接数据请求报文后,解析报文内容,提取连接报文中的用户信息、数据库信息,然后用中心服务端下发的安全防护策略认证用户的有效性,如果用户有效,则将登录请求报文转发给数据库,否则生成用户认证无效报文返回给业务系统,阻断连接;访问控制:验证用户对数据库的操作,根据安全策略验证用户行为,通过细粒度的安全规则,检测其操作数据库的合法性。据图流程如下:数据库代理服务接收到业务系统请求数据库的报文后,解析报文,提取操作数据库的信息。内容包括:访问用户、目标数据库、操作脚本、目标数据库表、字段,遍历本地策略,分别通过访问用,目标数据库,表,字段信息作为筛选条件匹配本地安全访问策略,找到策略后,再验证当前时间是否跟策略匹配,如果匹配,则将策略要求的处理结果发送给代理端处理本次请求;如果未找到匹配策略,按系统默认策略规则处理;3)高危脚本检测:检测数据库请求脚本的安全性,对存在着sql注入,拖库,撞库等危险操作行为进行检测,并将检测结果发送给代理层对请求报文进行阻断,保护数据库数据安全;4)生成访问日志:生成数据库访问日志,包括访问时间、操作用户、访问ip、代理端口、数据库类型、数据库服务器ip、数据库端口、请求脚本、安全防护结果等信息,将这些内容形成结构化数据缓存到本地。
为满足区块链上隐私计算服务对政务数据库高并发访问需要,在数据代理服务前增加高可用代理服务,将业务系统访问请求转发到不同的数据代理服务,具体架构如图2所示。
高可用代理:满足高并发需要,采用可横向扩展的部署方案处理高并发的数据请求,功能有策略解析、数据请求转发。1)策略解析:解析管理中心服务下发的端口映射策略规则,根据策略规则中的内容,启动端口映射代理进程;2)数据请求转发:数据请求转发按照代理端口映射规则,将接收的数据请求转发到目的主机的端口上,完成数据请求转发。
同时在高并发负载情况下,通过监控代理服务的keepalived节点负载情况,动态增加keepalived节点和代理节点。并将新的大量数据库连接请求转发到新增的数据代理服务节点上,实现数据代理服务对高并发的数据库请求的支持。
具体流程如图3所示:通过监控代理服务的keepalived节点负载情况,动态增加keepalived节点,将新的数据库连接请求转发到新增的数据代理服务节点,本产品用这种方法实现数据代理服务对高并发的数据库请求的支持。具体流程:
将数据代理服务封装成Docker容器:将keepalived服务封装到容器中,以便在增加keepalived节点的时候快速部署;2)发布Docker容器:将容器发布到云平台,供下一步动态增加代理服务节点使用;3)设定keepalived负载指标:对keepalived节点设置负载值,当节点的负载数据接近这个指标值时,说明当前节点压力较大,不再接收新的连接请求;4)循环检查keepalived负载情况:高可用代理服务通过循环检查keepalived节点的负载情况,判断是否达到了负载要求,当每个节点都达到了负载指定的数值,需要新增keepalived节点,分担连接请求压力;5)增加代理服务节点:从云服务上下载Docker容器,启动并部署新的keepalived节点;6)设置转发规则:将新增的数据库连接请求分配到新增的keepalived节点,分担代理服务的连接压力。定期循环检查keepalived节点的负载情况,确保代理服务稳定工作。
要实现更细粒度的数据访问控制,需要通过数据代理服务对业务系统访问数据库的报文进行分析,并结合细粒度的访问控制策略,更加精细地控制到表字段级别、时间维度。
数据库代理服务接收业务系统连接数据请求报文后,解析报文内容,提取报文中的sql脚本、操作用户。之后再解析sql脚本,获取脚本中操作数据库指令、目标数据库、表、字段信息。接着结合管理中心服务下发的安全访问控制策略,实现对数据库访问的控制。
数据库代理服务的防护流程如图4所示:
接收业务系统请求报文:代理服务首先接收业务系统连接数据请求报文,读取报文的全部内容;2)解析报文内容:得到全部的报文内容后,对报文内容进行解析,得到数据库请求的内容;3)提取操作数据库信息:通过对请求数据库内容的分析,提取报文中的sql脚本、操作用户,解析sql脚本,获取脚本中操作数据库指令、目标数据库、表、字段信息;4)遍历安全访问策略:循环遍历中心服务端下发的安全防护策略,用数据库请求信息中的内容对策略进行匹配;5)通过用户名筛选策略:通过请求信息中的用户名进行策略匹配;如果匹配进行下一步判断;6)通过数据库名称筛选策略:通过数据库名称筛选:通过请求信息中的数据库名称对当前策略进行筛选,如果符合进行下一步筛选;7)通过表名称进行筛选策略:通过请求信息中的表名称对当前策略进行筛选,如果匹配进行下一步筛选;8)通过字段名称筛选策略:通过请求信息中的字段内容进行策略筛选判断是否匹配,如果匹配进行下一步验证;9)验证策略是否匹配:对通过上述内容(5-8)筛选匹配出来的策略进行验证,判断是否匹配,如果匹配,进行下一步验证;10)验证时间是否匹配:根据当前时间验证策略中要求的时间是否匹配,如果匹配,当前策略命中,将当前策略中规定的放行或阻断结果作为验证结果返回到代理层,进行处理;11)生成阻断报文:如果策略阻断当前请求,则生成阻断报文;并将阻断报文返回给业务系统;12)发送原始报文都给数据库:如果策略放行当前请求,则将原始报文发送到数据库,完成业务请求;
在系统运行过程中:
首先按优先级遍历本地策略,分别通过用户,目标数据库,表,字段信息作为筛选条件匹配策略。如果匹配到策略后,验证当前时间是否在策略中定义时间之内,如果没问题,则按策略定义动作转发或阻断报文;如果没有找到匹配策略,则按照全局默认策略进行处理,如果是阻断,拦截业务请求报文,并按此类数据库协议加工一个异常报文,发送给业务系统;如果是转发报文,则对业务请求报文不做处理,直接转发给数据库。
通过以上过程,可以丰富数据库协议深度解析与攻击行为检测。
本系统在数据库报文解析方面,首先支持主流的关系型数据库,如MySQL、MariaDB、Oracle、DB2、Sqlserver、PostgreSQL、达梦、Gauss等数据库通信协议的解析。其次,还支持非关系型数据库,如Mongodb等数据库通信协议的解析。同时还支持工业时序数据库,如Iotdb、Influxdb等数据库通信协议的解析。也支持新兴的大数据库,如Hive、HBase、HDFS、Impala的数据库通信协议的解析;最后还支持对区块链通信协议的解析。另外本系统内置了一些高危检测脚本,如SQL注入、拖库、撞库等脚本,防止攻击数据库的行为发生。
Claims (6)
1.一种面向隐私计算的可扩容数据细粒度访问控制系统,其特征在于:通过设置管理中心服务、高可用代理、数据代理服务三个部分构成一个完整的功能系统;其中管理中心服务由管理员管理,设置管理认证用户、管理安全防护策略,以及将策略规则下发到数据代理服务和高可用代理的下发规则策略三个功能模块;
所述高可用代理部分用可横向扩展的技术部署方案,数据库管理员和业务系统发送接收访问数据库的数据包,通过代理端口转发给数据库代理服务;
所述数据代理服务设置代理层和控制层结构,串行在业务系统跟数据库之间,接收业务系统访问数据库资产的请求报文,分析报文内容,结合安全访问策略内容来控制业务系统对数据库的访问。
2.如权利要求1所述的一种面向隐私计算的可扩容数据细粒度访问控制系统,其特征在于:所述高可用代理服务的具体架构为:采用可横向扩展的部署方案处理高并发的数据请求,实现策略解析、数据请求转发,所述策略解析具体过程为:解析管理中心服务下发的端口映射策略规则,根据策略规则中的内容,启动端口映射代理进程;所述数据请求转发具体过程为:数据请求转发按照代理端口映射规则,将接收的数据请求转发到目的主机的端口上,完成数据请求转发;
同时在高并发负载情况下,通过监控代理服务的keepalived节点负载情况,动态增加keepalived节点和代理节点,并将新的大量数据库连接请求转发到新增的数据代理服务节点上,实现数据代理服务对高并发的数据库请求的支持;
通过数据代理服务对业务系统访问数据库的报文进行分析实现更细粒度的数据访问控制,并结合细粒度的访问控制策略,更加精细地控制到表字段级别、时间维度;
数据库代理服务接收业务系统连接数据请求报文后,解析报文内容,提取报文中的sql脚本、操作用户。之后再解析sql脚本,获取脚本中操作数据库指令、目标数据库、表、字段信息,并结合管理中心服务下发的安全访问控制策略控制数据库访问。
3.如权利要求2所述的一种面向隐私计算的可扩容数据细粒度访问控制系统,其特征在于:所述动态增加keepalived节点和代理节点,并将新的大量数据库连接请求转发到新增的数据代理服务节点的具体方法为:首先将数据代理服务封装成Docker容器:将keepalived服务封装到容器中,以便在增加keepalived节点的时候快速部署;之后发布Docker容器:将容器发布到云平台,供下一步动态增加代理服务节点使用;之后设定keepalived负载指标:对keepalived节点设置负载值,当节点的负载数据接近这个指标值时,说明当前节点压力较大,不再接收新的连接请求;接着循环检查keepalived负载情况:高可用代理服务通过循环检查keepalived节点的负载情况,判断是否达到了负载要求,当每个节点都达到了负载指定的数值,需要新增keepalived节点,分担连接请求压力;之后增加代理服务节点:从云服务上下载Docker容器,启动并部署新的keepalived节点;最后设置转发规则:将新增的数据库连接请求分配到新增的keepalived节点,分担代理服务的连接压力。定期循环检查keepalived节点的负载情况,确保代理服务稳定工作。
4.如权利要求3所述的一种面向隐私计算的可扩容数据细粒度访问控制系统,其特征在于:所述结合管理中心服务下发的安全访问控制策略控制数据库访问的具体方法为:在接收业务系统请求报文后,通过十二个步骤实现,其中步骤一为代理服务首先接收业务系统连接数据请求报文,读取报文的全部内容;步骤二为解析报文内容:得到全部的报文内容后,对报文内容进行解析,得到数据库请求的内容;步骤三为提取操作数据库信息:通过对请求数据库内容的分析,提取报文中的sql脚本、操作用户,解析sql脚本,获取脚本中操作数据库指令、目标数据库、表、字段信息;步骤四为遍历安全访问策略:循环遍历中心服务端下发的安全防护策略,用数据库请求信息中的内容对策略进行匹配;步骤五为通过用户名筛选策略:通过请求信息中的用户名进行策略匹配;如果匹配进行下一步判断;步骤六为通过数据库名称筛选策略:通过数据库名称筛选:通过请求信息中的数据库名称对当前策略进行筛选,如果符合进行下一步筛选;步骤七为通过表名称进行筛选策略:通过请求信息中的表名称对当前策略进行筛选,如果匹配进行下一步筛选;步骤八为通过字段名称筛选策略:通过请求信息中的字段内容进行策略筛选判断是否匹配,如果匹配进行下一步验证;步骤九为验证策略是否匹配:对通过步骤五到步骤八筛选匹配出来的策略进行验证,判断是否匹配,如果匹配,进行下一步验证;步骤十为验证时间是否匹配:根据当前时间验证策略中要求的时间是否匹配,如果匹配,当前策略命中,将当前策略中规定的放行或阻断结果作为验证结果返回到代理层,进行处理;步骤十一为生成阻断报文:如果策略阻断当前请求,则生成阻断报文;并将阻断报文返回给业务系统;步骤十二为发送原始报文都给数据库:如果策略放行当前请求,则将原始报文发送到数据库,完成业务请求;
所述数据代理服务作为数据库代理服务,串行在业务系统跟数据库之间,内部设置有代理层和控制层层两个模块,其中代理层负责解析请求报文,将报文中的信息提供给控制层,得到控制结果后根据防护要求生成阻断报文、重新组装脱敏报文,反馈给业务系统、数据库系统,完成烦请访问控制;控制层负责分析用户操作数据库的行为,根据安全策略先认证登录用户操作的合法性,如果用户合法,再对用户操作行为进行安全验证,通过安全验证后,再进行脱敏检测,最后在对操作脚本进行高危脚本检测,验证脚本是否存在违规操作。
5.如权利要求4所述的一种面向隐私计算的可扩容数据细粒度访问控制系统,其特征在于:所述代理层功能具体为:数据请求报文解析、生成阻断报文;其中数据请求报文解析功能接收业务系统请求报文,根据每个数据库通信报文协议,解析业务系统请求报文结构,读取报文中的操作信息,这些信息提供给控制层进行处理;生成阻断报文功能在得到控制层反馈的阻断结果后,根据结果内容,遵循数据库通信协议,模拟数据库端生成错误报文,新的报文信息代理层,返回给业务系统,阻断业务系统请求数据库的报文。
6.如权利要求5所述的一种面向隐私计算的可扩容数据细粒度访问控制系统,其特征在于:所述控制层功能具体为:用户认证、访问控制、高危脚本检测、生成访问日志;其中用户认证功能以独立于数据库服务上的用户认证对登录用户做认证,不参照数据库用户内容,完全按照管理员设置的安全策略进行验证,具体流程如下:数据库代理服务接收到业务系统请求数据库的报文后,解析报文,提取操作数据库的信息,遍历本地策略,分别通过访问用,目标数据库,表,字段信息作为筛选条件匹配本地安全访问策略,找到策略后,再验证当前时间是否跟策略匹配,如果匹配,则将策略要求的处理结果发送给代理端处理本次请求;如果未找到匹配策略,按系统默认策略规则处理;之后高危脚本检测:检测数据库请求脚本的安全性,对存在着sql注入,拖库,撞库等危险操作行为进行检测,并将检测结果发送给代理层对请求报文进行阻断,保护数据库数据安全;接着生成访问日志:生成数据库访问日志,将这些内容形成结构化数据缓存到本地。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211707128.2A CN116155559A (zh) | 2022-12-27 | 2022-12-27 | 一种面向隐私计算的可扩容数据细粒度访问控制系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211707128.2A CN116155559A (zh) | 2022-12-27 | 2022-12-27 | 一种面向隐私计算的可扩容数据细粒度访问控制系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116155559A true CN116155559A (zh) | 2023-05-23 |
Family
ID=86338215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211707128.2A Pending CN116155559A (zh) | 2022-12-27 | 2022-12-27 | 一种面向隐私计算的可扩容数据细粒度访问控制系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116155559A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117648362A (zh) * | 2024-01-29 | 2024-03-05 | 北京谷器数据科技有限公司 | 一种第三方数据库的链接方法及系统 |
-
2022
- 2022-12-27 CN CN202211707128.2A patent/CN116155559A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117648362A (zh) * | 2024-01-29 | 2024-03-05 | 北京谷器数据科技有限公司 | 一种第三方数据库的链接方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105656903B (zh) | 一种Hive平台的用户安全管理系统及应用 | |
Kene et al. | A review on intrusion detection techniques for cloud computing and security challenges | |
Bhathal et al. | Big data: Hadoop framework vulnerabilities, security issues and attacks | |
CN111193719A (zh) | 一种网络入侵防护系统 | |
WO2019217595A1 (en) | Detecting credential compromise in a cloud resource | |
CN103413083B (zh) | 单机安全防护系统 | |
CN105430000A (zh) | 云计算安全管理系统 | |
CN112149105A (zh) | 数据处理系统、方法、相关设备及存储介质 | |
CN114124583B (zh) | 基于零信任的终端控制方法、系统及装置 | |
Yao et al. | A trust management framework for software‐defined network applications | |
CN109936555A (zh) | 一种基于云平台的数据存储方法、装置及系统 | |
CN106209907B (zh) | 一种检测恶意攻击的方法及装置 | |
CN116155559A (zh) | 一种面向隐私计算的可扩容数据细粒度访问控制系统 | |
CN114268505B (zh) | 一种蜜网欺骗策略调整方法、装置、电子设备及存储介质 | |
CN112468464B (zh) | 基于服务链的状态机完整性验证系统及方法 | |
CN114745145B (zh) | 业务数据访问方法、装置和设备及计算机存储介质 | |
CN112383573B (zh) | 一种基于多个攻击阶段的安全入侵回放设备 | |
CN111506661B (zh) | 一种内容访问管理方法、装置和存储介质 | |
CN112153050A (zh) | 一种主动式防入侵的大数据网络安全设备和防入侵方法 | |
CN111641652A (zh) | 一种基于云计算的应用安全服务平台 | |
US20220353283A1 (en) | Intruder detection for a network | |
Duan et al. | An Edge Cloud Data Integrity Protection Scheme Based on Blockchain | |
Bennasar et al. | State-of-The-Art of cloud computing cyber-security | |
CN111756747B (zh) | 一种防火墙网络安全控制方法及其系统 | |
CN114881469A (zh) | 一种面向企业职工的绩效考核和管理系统及其方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |