CN109525570B - 一种面向集团客户的数据分层安全访问控制方法 - Google Patents

一种面向集团客户的数据分层安全访问控制方法 Download PDF

Info

Publication number
CN109525570B
CN109525570B CN201811313419.7A CN201811313419A CN109525570B CN 109525570 B CN109525570 B CN 109525570B CN 201811313419 A CN201811313419 A CN 201811313419A CN 109525570 B CN109525570 B CN 109525570B
Authority
CN
China
Prior art keywords
data
module
database
access control
service
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.)
Active
Application number
CN201811313419.7A
Other languages
English (en)
Other versions
CN109525570A (zh
Inventor
蒋睿
苏家琰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Southeast University
Original Assignee
Southeast University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Southeast University filed Critical Southeast University
Priority to CN201811313419.7A priority Critical patent/CN109525570B/zh
Publication of CN109525570A publication Critical patent/CN109525570A/zh
Application granted granted Critical
Publication of CN109525570B publication Critical patent/CN109525570B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105Multiple levels of security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种面向集团客户的数据分层安全访问控制方法,包括分布式应用程序收发模块、数据加解密处理模块、密钥协商模块、数据并发处理模块、分层访问控制模块、数据库连接模块和MySQL数据库模块。分布式应用程序收发模块负责监听跨平台的应用程序服务请求;数据加解密处理模块负责数据加密和解密,并确保数据来源的可靠性;密钥协商模块负责产生会话密钥;数据并发处理模块负责解析服务请求数据;分层访问控制模块负责判断用户是否有访问分层数据的权限;数据库连接模块负责建立数据库连接池,提高系统的数据读写效率;MySQL数据库模块负责模块化存储集团客户数据。本发明可为不同企业规模的集团客户,提供一种分层、可扩展的数据访问控制方法。

Description

一种面向集团客户的数据分层安全访问控制方法
技术领域
本发明涉及计算机网络通信领域以及信息安全领域,特别是涉及一种面向集团客户的数据分层安全访问控制方法。
背景技术
BLP(Bell-La Padula)模型,是安全访问控制的一种模型,它用多级安全的概念对主体和客体进行分级和标记。BLP模型最初只是运用于军事领域,在根据内部的组织层次、军衔以及职务分层的军方信息系统中,划分不同密级的数据,并保证数据读写的安全性。RBAC (Role-Based Access Control)模型是一种基于角色的访问控制模型,它将权限与角色相关联,用户通过成为适当的角色而得到这些角色的权限,极大地简化了权限的管理。随着如今互联网技术的发展,越来越多的企业采用基于客户/服务器结构的Web通信系统,而目前大多数Web 服务器只提供公共服务,不能针对企业内部用户进行粒度更为精细的访问控制;同时,大多数的Web服务器只提供非常弱的基于用户ID/口令的身份认证,很难保证数据的安全性,导致了很多信息泄露事件,如埃森哲服务器大量敏感信息泄露事件、雅虎30亿账号泄露事件等。目前我国正全面推进网络安全和信息化工作,为了响应国家号召并适应我国互联网的发展现状,需要结合BLP模型和RBAC模型,开发一种面向集团客户的数据分层安全访问控制方法,应用于不同规模的企业,保证企业能对内部用户进行细粒度的访问控制,同时确保数据的安全。
专利申请201410741831.4一种基于多策略融合的数据库访问控制方法,该方法通过RBAC 模块来判断用户所对应的角色是否对要访问的数据库表有相应的访问权限,如果没有访问权限,拒绝访问,如果有访问权限,再由BLP模块判断用户对要访问数据库表中字段的操作权限。不仅能够保证数据库中各安全级别的信息能够被有效的访问,对数据库实现表级甚至字段级的安全保护,还能根据实际情况对主客体权限进行有效的定制,对于不同角色的主体提供相应的访问控制策略。但是该发明存在以下缺陷,第一,没有对数据库中敏感数据作加密或哈希处理,容易造成用户敏感信息的泄露;第二,运用BLP模型时,固定划分数据的等级,当系统加入新实体时,扩展性较差,不够灵活;第三,数据库没有作备份处理,使得数据库崩溃时无法恢复数据,可靠性较低。
专利申请201410294654.X一种融入可信等级的BLP改进模型及认证访问方法,该方法采用一种新的方法对用户平台的系统可信等级进行评估,考虑了平台对可信度的影响,增加了完整性标签,能对主体的完整性标签进行动态调整。本发明的优点有:本发明将安全模型与可信计算的理论两种方法巧妙地结合起来,在可信网络连接技术的基础上实现强制访问控制,对原来的方法进行了创新,增加了系统的安全性;针对不同的终端的平台配置不同的情况,提出一种新的系统可信度的计算方法,具有很强的通用性;对BLP模型进行了改进,考虑了平台对可信度的影响,增加了完整性标签,并能对主体的完整性标签进行动态调整,从而增强了模型的保密性,完整性和可用性,提高了系统的效率。但是该发明存在以下缺陷:第一,仅使用BLP模型对用户进行访问控制,在组织结构上,只能实现横向水平管理,而无法实现纵向垂直管理;第二,运用BLP模型时,固定划分数据的等级,当系统加入新实体时,扩展性较差,不够灵活;第三,没有对数据库中敏感数据作加密或哈希处理,容易造成用户敏感信息的泄露;第四,数据库没有作备份处理,使得数据库崩溃时无法恢复数据,可靠性较低。
201610100346.8一种访问控制方法及平台,该平台数据处理流程包括:接收用户向平台发起的资源访问请求,该资源访问请求包含用户账号和目标资源;根据该用户账号获取用户所在租户中对应的角色及角色权限,然后根据该角色权限判断该角色是否具备访问目标资源的权限,若具备访问目标资源的权限,提供目标资源给用户,若不具备访问目标资源的权限,拒绝提供目标资源给用户。该发明使得用户在平台中进行资源访问时,有效的将不同租户的数据进行隔离,从而保证同一平台下的每个租户数据安全。但是该发明存在以下缺点:第一,只运用RBAC模型控制用户的访问权限,没有对数据进行等级划分,难以保证数据读写操作的安全性;第二,没有对数据库中敏感数据作加密或哈希处理,容易造成用户敏感信息的泄露;第三,RBAC模型定义的操作接口标准无法处理跨平台的服务调用,需要额外增加一个中间件,兼容性差。
专利申请201710973977.5一种基于信息流的多级安全访问控制模型,该模型通过分析两种多级安全策略BIBA与BLP模型的联系与侧重点,利用多级安全的思想设计信息流访问规则,考虑现有模型的“单调性缺陷”,设计了针对特定信息流实施访问规则的可信代理(Trusted Agent,TA)模块,扩展了信息流传递的限制条件,同时系统仍能继续保持原有的可信等级。本发明公开的模型具有较好的信息流访问控制效果,并且适用于跨域系统的信息流传递。但是该发明存在以下缺陷:第一,使用BLP模型对用户进行访问控制,在组织结构上,只能实现横向水平管理,而无法实现纵向垂直管理;第二,运用BLP模型时,固定划分数据的等级,当系统加入新实体时,扩展性较差,不够灵活。
201710611702.7数据访问控制系统及方法,数据访问控制系统分别连接多个用户系统,用于对多个用户系统之间的数据交互进行访问控制;数据访问控制系统包括:角色管理模块,用于提取用户系统上送报文的用户信息,根据用户信息识别报文的用户角色;数据分级及封装模块,用于提取报文的数据信息,根据数据信息识别报文的数据安全等级;动态授权模块,用于提取报文的交易代码,根据用户角色、数据安全等级和交易代码,确定报文的动态授权规则;任务流控制访问模块,用于根据用户角色和交易代码,确定报文是否有设定的例外权限,若有,则根据例外权限和动态授权规则确定报文的数据访问控制策略;否则,根据动态授权规则确定报文的数据访问控制策略。但是该发明存在以下缺陷:第一,没有对数据库中敏感数据作加密或哈希处理,容易造成用户敏感信息的泄露;第二,数据安全等级采用固定的划分机制,当系统加入新的数据实体时,扩展性较差,不够灵活。
专利申请201110439078.X一种安全保密策略的方法,该方法的特点是:首先在系统中引入了动态可控安全交换机和策略服务器,并要求所有的网络实体必须与动态可控安全交换机直接相连,同时,采用星型的网络拓扑有利于对网络实施安全控制,也是在系统中实施L-BLP 安全策略的必要条件。采用本方法后,能够处理来自外部的入侵,也能对内部用户访问网络的行为进行监控,同时对内部用户的异常行为进行记录,保证网络以及业务数据的安全性。但是该系统存在以下缺陷:第一,仅使用BLP模型对用户进行访问控制,在组织结构上,只能实现横向水平管理,而无法实现纵向垂直管理;第二,运用BLP模型时,固定划分数据的等级,当系统加入新实体时,扩展性较差,不够灵活;第三,动态可控安全交换机无法处理跨平台的服务调用,需要额外增加一个中间件,兼容性差。
专利申请201510818687.4一种基于RBAC模型改进的访问控制模型,包括账号U、角色R、会话S、约束C、数据授权实体P、业务数据实体OBS、业务操作实体OPS;所述访问控制模型基于RBAC基本模型,对数据授权实体P部分结合面向业务的特征进行扩展,将模型中的业务操作实体OPS及业务数据实体OBS以业务单元为单位划分,将操作和数据按照业务内聚度归集到业务单元下,使应用系统中不再存在独立的操作和数据,角色R以业务单元为单位进行授权分配,服务调用接口遵循基本的RBAC模型定义的操作接口标准,在角色的授权访问控制部分,采用以业务单元为基本单位的访问控制。但是该发明存在以下缺陷:第一,只运用 RBAC模型控制用户的访问权限,没有对数据进行等级划分,难以保证数据读写操作的安全性;第二,没有对数据库中敏感数据作加密或哈希处理,容易造成用户敏感信息的泄露;第三,RBAC模型定义的操作接口标准无法处理跨平台的服务调用,需要额外增加一个中间件,兼容性差。
201711168787.2一种基于角色的WEB安全访问控制方法,该方法以RBAC方式建立用户表、角色表、功能权限表;用户表跟角色表多对多关联、角色表跟功能权限表多对多关联;建立系统资源表,关联功能权限表,功能权限表跟系统资源表多对多关联;建立用户资源表,关联用户表以及角色表;用户表跟用户资源表一对多关联,角色表跟用户资源表多对多关联;针对系统资源表以及用户资源表,按实际需求进行实例化;按照系统的实际情况,把系统资源表实例化为多个具体的表。本发明使得权限控制包含了所有的WEB资源,达到了完全的权限控制,避免了权限的盲区;适用于所有需要进行WEB安全访问控制的系统软件。但是该发明存在以下缺陷:第一,只运用RBAC模型控制用户的访问权限,没有对数据进行等级划分,难以保证数据读写操作的安全性;第二,没有对数据库中敏感数据作加密或哈希处理,容易造成用户敏感信息的泄露;第三,RBAC模型定义的操作接口标准无法处理跨平台的服务调用,需要额外增加一个中间件,兼容性差。
专利申请201310571822.0一种基于RBAC访问控制模型的用户信息访问控制方法,应用于电子商务,包括以下步骤:1、安全服务器记录物流发送方注册的基本信息,包括名称及各级网点分布;2、安全服务器将交易方的用户信息保存至数据库;3、安全服务器将用户信息中的收货地址划分为多个地址区段,并为物流发送方的各级网点指派角色,向不同角色授予允许访问不同地址区段的权限;4、安全服务器建立交易链,将收货方的用户信息以条码形式发送给物流发送方。本发明实现用户个人信息对物流环节中不同角色的访问控制,提高了用户信息的保密性。但是该发明存在以下缺陷:第一,只运用RBAC模型控制用户的访问权限,没有对数据进行等级划分,难以保证数据读写操作的安全性;第二,没有对数据库中敏感数据作加密或哈希处理,容易造成用户敏感信息的泄露;第三,数据库没有作备份处理,使得数据库崩溃时无法恢复数据,可靠性较低。
专利申请201010519607.2一种改进的RBAC访问控制模型,该模型只需要添加相应的元素,并配置好元素间的关联关系即可,扩展性极强,同时,由于其灵活性减轻了管理人员的维护负担,基于角色的访问控制模型,通过引入“角色”的概念来实现用户与权限的逻辑分离;角色是RBAC模型的核心,是一个或一群用户在组织内可执行的操作的集合;系统根据职权和责任来划分角色,角色可以完成一定的职责;属于角色的用户获得该角色所拥有的权限;用户属于特定的一个或多个角色,角色拥有一个或多个权限,用户通过担任某些角色来获得访问权限,因此,角色成为了沟通主体和客体间联系的中介;角色与用户相比是稳定的,当权限改变时,只需重新分配即可。但是该发明存在以下缺陷:第一,只运用RBAC模型控制用户的访问权限,没有对数据进行等级划分,难以保证数据读写操作的安全性;第二,RBAC 模型定义的操作接口标准无法处理跨平台的服务调用,需要额外增加一个中间件,兼容性差;第三,没有对数据库中敏感数据作加密或哈希处理,容易造成用户敏感信息的泄露。
期刊论文《信息安全学报》2017.10期面向移动Web操作系统的BLP改进模型及应用,使用BLP模型通过对主体和客体进行分级和标记,并引入高安全等级的引用监视器,实现信息系统的强制访问,能满足现有的Web操作系统对安全保密的需求。模型从安全模型构建入手,对智能终端的Web操作系统进行抽象建模,并重定义BLP模型的元素,增强主客体的访问控制以提高其机密性。鉴于BLP模型缺乏可信主体的最小权限原则和完整性约束,本文在改进的BLP模型当中重新划分主体、客体的安全级,增加可信级别标记和角色映射函数,并针对现有的Web操作系统进行模型映射,实现了最小权限原则、主体完整性约束和域间隔离机制,可有效提高Web 操作系统机密性等级。但是该发明存在以下缺陷:第一,仅使用BLP模型对用户进行访问控制,在组织结构上,只能实现横向水平管理,而无法实现纵向垂直管理;第二,运用BLP模型时,固定划分数据的等级,当系统加入新实体时,扩展性较差,不够灵活;第三,没有对数据库中敏感数据作加密或哈希处理,容易造成用户敏感信息的泄露;
期刊论文《软件导刊》2013.3期基于角色访问控制的数据库安全模型研究,提出了一种访问控制策略模型,用于描述与维护系统中数据的保密性和完整性。基于角色的访问控制 (RBAC)借鉴了人们熟知的用户组、权限组以及职责分离的概念和应用,以角色为中心的权限管理更符合公司和企业的实际管理方式,因而被广泛应用于企业管理。通过给用户分配恰当的角色,使角色拥有一定的权限成为访问控制的主体,可以提高管理效率。该论文基于RBAC模型,介绍了基于角色的出租车管理系统的部分设计;阐述了模块设计与应用和数据库的设计理念;成功地实现了对不同角色的安全访问控制,有效地解决了安全访问控制问题。但是该发明存在以下缺陷:第一,只运用RBAC模型控制用户的访问权限,没有对数据进行等级划分,难以保证数据读写操作的安全性;第二,RBAC模型定义的操作接口标准无法处理跨平台的服务调用,需要额外增加一个中间件,兼容性差;第三,没有对数据库中敏感数据作加密或哈希处理,容易造成用户敏感信息的泄露。
期刊论文《信息安全与技术》2016.7期基于BLP/BIBA混合的云计算数据中心安全访问控制模型,针对当前流行的云计算技术,分析了其所面临的安全问题。依据信息安全等级保护技术的保密性和完整性要求,基于BLP模型和Biba模型构建一个形式化描述的混合安全模型。该模型不仅能保护云端服务器中数据完整性和保密性,而且使云计算环境具有相当的灵活性和实用性。但是该发明存在以下缺陷:第一,仅使用BLP模型对用户进行访问控制,在组织结构上,只能实现横向水平管理,而无法实现纵向垂直管理;第二,运用BLP模型时,固定划分数据的等级,当系统加入新实体时,扩展性较差。
期刊论文《现代计算机(专业版)》2017.5期基于改进RBAC模型的SaaS模式下安全访问控制,介绍了SaaS(软件即服务),作为云计算的一种服务形式,是面向多用户的一种服务模式, 即多个租户共享一个应用软件,租户之间的数据既有共享也有隔离,保证每个用户之间数据的隔离和信息安全是亟待解决的问题。传统RBAC(基于角色的访问控制)模型可以实现系统数据的隔离和信息安全,但其不能进行角色的动态配置。提出改进的RBAC模型,使角色和权限可动态匹配,以适应SaaS模式下多租户性的需求,并已在开发的项目管理信息系统中得到应用。但是该论文所涉及的系统有以下缺陷:第一,只运用RBAC模型控制用户的访问权限,没有对数据进行等级划分,难以保证数据读写操作的安全性;第二,RBAC模型定义的操作接口标准无法处理跨平台的服务调用,需要额外增加一个中间件,兼容性差;第三,没有对数据库中敏感数据作加密或哈希处理,容易造成用户敏感信息的泄露。
发明内容
针对以上安全访问控制方法数据分级扩展性差、只能实现横向水平管理而无法实现纵向垂直管理、读写操作安全性差、数据保密性差、平台兼容性差、数据库可靠性低等技术问题,本发明基于BLP模型和RBAC模型,提供了一种跨平台的、面向集团客户的数据分层安全访问控制方法,该方法可针对不同规模的企业,对企业内部的数据进行等级和角色的划分,保证企业能对内部用户进行细粒度的访问控制,实现企业组织结构上的横向水平管理和纵向垂直管理,同时在已经划分的等级之间,预留了待定的等级空间,以应对企业规模的变动,扩展性强;另外,通过数据加密、签名技术确保数据的安全,采用MySQL主从镜像技术提高数据库的可靠性,为达此目的,本发明提供一种面向集团客户的数据分层安全访问控制方法,包括分布式应用程序收发模块、数据加解密处理模块、密钥协商模块、数据并发处理模块、分层访问控制模块、数据库连接模块和MySQL数据库模块;其中:分布式应用程序收发模块负责监听移动端、Web端应用程序发送的服务请求,实现跨平台的服务调用;数据加解密处理模块负责加密和解密服务请求和响应数据,同时验证数据的发送方,确保数据来源的可靠性,即数据发送方不可否认;密钥协商模块在每一次应用程序发送服务请求时,产生一个会话密钥,并且在密钥分发过程中可以抵抗中间人攻击;数据并发处理模块负责解析JSON 格式封装的服务请求,将解析产生的业务数据转发给分层访问控制模块,并采用硬盘中的log 日志文件作为缓存池,处理重复的服务请求,提高系统的并发性能;分层访问控制模块采用自主设计的基于BLP、RBAC模型的分层安全访问控制模块,负责集团客户的数据分层,并判断用户是否拥有访问数据的权限,使得集团客户在组织结构上,实现纵向垂直管理和横向水平管理,同时保证数据的安全性;数据库连接模块负责建立数据库连接池,减小频繁创建和销毁数据库连接带来的性能损耗,提高系统对数据的读写效率;MySQL数据库模块是自主设计的模块化数据存储解决方案,负责模块化存储集团客户数据,采用主从镜像技术提高数据库的读写效率,保障数据库的高可靠性,并采用哈希函数保证用户隐私数据的安全。
本发明的进一步改进,所述的分布式应用程序收发模块包括WebService网络监听类模块、Soap协议解析模块以及客户方密文数据收发模块;负责监听移动端、Web端应用程序发送的服务请求,实现跨平台的服务调用;
所述的WebService网络监听类模块,基于Socket接口,采用TCP/IP协议,接收移动端、 Web端应用程序发送的服务请求,转发给Soap协议解析模块,同时接收Soap协议解析模块的服务响应Soap消息,发送给移动端、Web端应用程序;所述的Soap协议解析模块接收WebService网络监听类模块发送的服务请求,解析服务请求中的Soap消息,获取服务名参数,并根据服务名参数访问WSDL中对应的方法,将Soap消息中的密钥协商参数和JSON格式的服务请求加密数据发送到客户方密文数据收发模块;同时Soap协议解析模块接收客户方密文数据收发模块发送的密钥协商参数和服务响应加密数据,封装成Soap消息,发送给WebService网络监听类模块;所述的客户方密文数据收发模块,接收Soap协议解析模块发送的密钥协商参数和服务请求加密数据,并转发到服务方密文数据收发模块;同时客户方密文数据收发模块接收服务方密文数据收发模块的密钥协商参数和服务响应加密数据,发送到 Soap协议解析模块。
本发明的进一步改进,所述的数据加解密处理模块包括服务方密文数据收发模块、加解密控制模块以及明文数据收发模块;负责加密和解密服务请求和响应数据,同时验证数据的发送方,确保数据来源的可靠性,即数据发送方不可否认;
所述的服务方密文数据收发模块,接收客户方密文数据收发模块的JSON格式的服务请求加密数据,并发送到加解密控制模块,同时接收加解密控制模块的服务响应加密数据,发送到客户方密文数据收发模块;所述的加解密控制模块,接收服务方密文数据收发模块的密钥协商参数,发送到密钥转发模块,同时接收密钥转发模块发送的密钥协商参数和带签名的会话密钥;另外,所述的加解密控制模块接收服务方密文数据收发模块发送的JSON格式的服务请求加密数据,使用密钥转发模块提供的会话密钥,基于AES算法解密服务请求数据,发送到明文数据收发模块;同时加解密控制模块接收明文数据收发模块发送的服务响应明文数据,使用密钥转发模块提供的会话密钥,基于AES算法加密服务响应明文数据,将密钥协商参数和服务响应密文数据发送到服务方密文数据收发模块;所述的明文数据收发模块接收加解密控制模块的服务请求明文数据,发送到并发数据收发模块,同时接收并发数据收发模块的服务响应明文数据,发送到明文数据收发模块。
本发明的进一步改进,所述的密钥协商模块包括初始化参数模块、公钥生成模块、系统签名模块以及密钥转发模块;负责在每一次应用程序发送服务请求时,产生一个会话密钥,并且在密钥分发过程中可以抵抗中间人攻击;
所述的初始化参数模块保存着当前实体向第三方权威机构申请公钥证书CertA和私钥 SKA,并且定义了一个大素数p以及p的本原根a,然后随机选择一个私有的随机数 XA(XA<p),将这三个初始化参数、私钥SKA和公钥证书CertA发送给公钥生成模块;所述的密钥生成模块接收初始化参数模块发送的初始化参数、私钥SKA和公钥证书CertA,计算
Figure BDA0001855618830000081
并将参数YA、私钥SKA和公钥证书CertA发送到系统签名模块;系统签名模块接收公钥生成模块发送的参数YA、私钥SKA和公钥证书CertA,计算当前实体参数YA的签名
Figure BDA0001855618830000082
并将签名SigA和公钥证书CertA作为密钥协商参数,发送到密钥转发模块;密钥转发模块接收加解密控制模块发送的密钥协商参数,即签名SigB和公钥证书CertB和系统签名模块发送的密钥协商参数,即签名SigA和公钥证书CertA,使用公钥证书CertB中的公钥PKB,通过签名验证恢复算法计算
Figure BDA0001855618830000083
即其中B是密钥协商的对端实体,YB的产生方式与YA相同,即
Figure BDA0001855618830000084
密钥协商双方的大素数p以及p的本原根a相同,从而验证数据来源的可靠性,再计算
Figure 1
得到会话密钥,并将会话密钥KA和密钥协商参数,即签名SigA和公钥证书CertA,发送到加解密控制模块。
本发明的进一步改进,所述的数据并发处理模块包括并发数据收发模块、数据编解码模块、数据解析模块以及业务层数据收发模块;负责解析JSON格式封装的服务请求,将解析产生的业务数据转发给分层访问控制模块,并采用硬盘中的log日志文件作为缓存池,处理重复的服务请求,提高系统的并发性能;
所述的并发数据收发模块基于socket接口,通过TCP/IP传输协议,接收明文数据收发模块发送的JSON格式的服务请求明文数据,并转发到数据编解码模块,同时接收数据编解码模块的服务响应明文数据,发送到并发数据收发模块;所述的数据编解码模块,接收并发数据收发模块的服务请求明文数据,将数据的编码格式由Unicode编码转为GBK编码,发送到数据解析模块;同时数据编解码模块接收数据解析模块的GBK编码的服务响应明文数据,转换为Unicode编码,然后发送到并发数据收发模块;所述的数据解析模块接收据编解码模块的JSON格式的服务请求明文数据,并将服务请求明文数据解析为POJO类,将POJO类中的用户名、角色名、目标数据对象和业务请求信息发送到业务层数据收发模块;其中,所述的数据解析模块采用高速缓存技术,将服务请求明文数据存储在硬盘中的log日志文件,默认每隔30min清理log日志文件中的过期服务请求明文数据,如果缓存中存在相同的服务请求明文数据,就直接发送高速缓存中的服务响应明文数据到数据编解码模块;同时数据解析模块接收业务层数据收发模块的服务响应明文数据,将服务响应明文数据由POJO类转换为JSON格式,发送到数据编解码模块;所述的业务层数据收发模块,接收数据解析模块POJO 格式的用户名、角色名、目标数据对象和业务请求信息,发送到访问控制层数据收发模块,同时接收访问控制层数据收发模块POJO格式的服务响应明文数据,发送数据解析模块。
本发明的进一步改进,所述的分层访问控制模块包括访问控制层数据收发模块、BLP 等级访问控制模块、RBAC角色访问控制模块以及授权数据转发模块;所述的分层访问控制模块是自主设计的基于BLP、RBAC模型的分层安全访问控制模块,该模块主要适用于大型集团客户和小型集团客户,并为集团客户的不同实体,分配不同的等级和角色;通过等级和角色两层访问控制机制,判断属于某一等级的用户是否拥有访问数据的权限,使得集团客户在组织结构上,实现纵向垂直管理和横向水平管理,同时保证数据的安全性;
所述的访问控制层数据收发模块接收业务层数据收发模块发送的用户名、角色名、目标数据对象和业务请求信息,并转角色发到BLP等级访问控制模块,同时接收BLP等级访问控制模块发送的异常服务响应明文数据;所述的BLP等级访问控制模块是自主设计的安全访问控制模块,该模块按照行政区域或项目实际需求,基于BLP模型,为集团客户的不同实体赋予不同的等级,同时,为不同实体对应的用户和数据库数据也赋予与实体相同的等级,使得高等级的用户能“读”同等级或低等级的数据,低等级的用户能“写”同等级或高等级的数据;同时,该模块在对实体划分等级时,在不同等级的实体之间,预留了待定的等级空间,以应对企业规模的变动,扩展性强;此外,所述的BLP等级访问控制模块接收访问控制层数据收发模块发送的用户名、角色名、目标数据对象和业务请求信息,并比较用户名的BLP等级和目标数据对象的BLP等级,如果用户名的BLP等级高,就发送用户名、角色名、目标数据对象和业务请求信息到RBAC角色访问控制模块,否则发送异常服务响应明文数据到访问控制层数据收发模块;所述的RBAC角色访问控制模块是自主设计的RBAC安全访问控制模块,该模块基于RBAC模型,为集团客户的不同实体分配角色,用户即使通过了等级访问控制机制,也只能访问被授权的角色所对应的实体数据,解决同等级实体间数据可以不受限制、相互访问的问题;此外,所述的RBAC角色访问控制模块接收BLP等级访问控制模块发送的用户名、角色名、目标数据对象和业务请求信息,并判断该用户的角色是否有访问目标数据对象的权限,如果有权限,就发送业务请求信息到授权数据转发模块,否则发送异常服务响应明文数据到BLP等级访问控制模块;所述的授权数据转发模块,接收RBAC角色访问控制模块发送的业务请求信息,并转发到持久层数据收发模块,同时接收持久层数据收发模块的服务响应明文数据,发送到访问控制层数据收发模块。
本发明的进一步改进,所述大型集团客户分为19个等级层次,小型集团客户分为5个等级层次。
本发明的进一步改进,所述的数据库连接模块包括持久层数据收发模块、数据库连接池模块以及数据库数据存取块;负责建立数据库连接池,减小频繁创建和销毁数据库连接带来的性能损耗,提高系统对数据的读写效率;
所述的持久层数据收发模块接收授权数据转发模块的业务请求信息,解析为相应的业务请求SQL语句,发送到数据库连接池模块,同时接收数据库连接池模块发送的服务响应结果集,将服务响应结果集转换为POJO类的服务响应明文数据,发送到持久层数据收发模块;所述的数据库连接池模块由一组可重用的数据库连接和请求队列组成,数据库连接池中的数据库连接初始值默认为10,请求队列接收持久层数据收发模块发送的业务请求SQL语句,然后取出数据库连接池中的一个连接作为载体,将业务请求SQL语句发送到数据库数据存取块;同时数据库连接池模块中的数据库连接接收数据库数据存取块的服务响应结果集,发送到持久层数据收发模块;其中,数据库连接在数据读写操作完毕后,自动被数据库连接池回收并重复利用,可以减少反复创建和销毁数据库连接带来的系统开销和损耗,创建数据库连接是一个费时的活动,每次都要花费0.05s~1s的时间;另外,数据库连接池可设置timeout属性,当超过timeout属性对应的时间没有访问数据库,并且当前数据库连接数超过初始值时,数据库连接池会自动销毁多余的数据库连接,使数据库连接池中的数据库连接保持在初始值;所述的数据库数据存取块接收数据库连接池模块发送的业务请求SQL语句,与MySQL数据存取控制模块建立TCP/IP连接,将业务请求SQL语句发送到MySQL数据存取控制模块;同时数据库数据存取块接收MySQL数据存取控制模块的服务响应结果集,发送到数据库连接池模块。
本发明的进一步改进,所述的MySQL数据库模块包括MySQL数据存取控制模块和MySQL数据存储模块;所述的MySQL数据库模块是自主设计的模块化数据存储解决方案,负责模块化存储集团客户数据,采用主从镜像技术提高数据库的读写效率,保障数据库的高可靠性,并采用哈希函数保证用户隐私数据的安全;
所述的MySQL数据存取控制模块,接收并解析数据库数据存取块发送的业务请求SQL 语句,比较该SQL语句安全等级与MySQL数据库安全等级,如果MySQL数据库安全等级较高,就将解析后的SQL语句指令发送到MySQL数据存储模块,否则发送异常服务响应结果集到数据库数据存取块;同时MySQL数据存取控制模块接收MySQL数据存储模块的服务响应结果集,发送到数据库数据存取块;所述的MySQL数据存储模块,分为主数据库和从数据库,主数据库按照模块化的方式分类存储集团客户的业务数据和用户数据,其中用户的隐私数据采用哈希值存储,防止用户隐私泄露;并且该模块采用MySQL主从镜像的方式,根据MySQL日志文件,将主数据库数据异步复制到从数据库,完成数据备份,保障了数据库的高可靠性;另外,所述的MySQL数据存储模块接收MySQL数据存取控制模块发送的 SQL语句指令,如果是“写”指令,就访问主数据库;如果是“读”指令,就访问从数据库,将读写操作分离,从而减少主数据库的负载,提高读写效率,然后将得到的服务响应结果集发送到MySQL数据存取控制模块。
本发明一种面向集团客户的数据分层安全访问控制方法,具有如下有益效果;
与现有技术相比,本发明基于BLP模型和RBAC模型,提供了一种面向集团客户的数据分层安全访问控制方法,可针对不同规模的企业,对企业内部的数据进行等级和角色的划分,保证企业能对内部用户进行细粒度的安全访问控制,实现企业组织结构上的安全横向水平管理和安全纵向垂直管理。在为不同规模企业划分的等级之间,预留了待定的等级空间,以应对企业规模的变动,安全扩展性强。数据库采用模块化管理,并采用MySQL主从镜像技术提高数据库的安全可靠性。企业用户采用WebService方式调用服务,因此具有更好的安全跨平台特性;用户与服务器交互时采用数据加密、签名技术和分层安全技术,确保数据的安全。本发明的系统完整、实用便捷,其整体安全性能好,可操作性强,具有良好的扩展性和稳定性。
附图说明
图1是本发明的整体框图;
图2是本发明的整体原理结构图;
图3是本发明的大型集团客户组织架构图;
图4是本发明的大型集团客户内部等级划分图;
图5是本发明的小型集团客户组织架构图;
图6是本发明的小型集团客户内部等级划分图;
图7是本发明的服务请求流程图;
图8是本发明的服务响应流程图;
图9是本发明的分布式应用程序收发模块结构图;
图10是本发明的数据加解密处理模块结构图;
图11是本发明的密钥协商模块结构图;
图12是本发明的密钥协商原理图;
图13是本发明的数据并发处理模块结构图;
图14是本发明的分层访问控制模块结构图;
图15是本发明的分层访问控制流程图;
图16是本发明的数据库连接模块结构图;
图17是本发明的MySQL数据库模块结构图。
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细描述:
本发明基于BLP模型和RBAC模型,提供了一种跨平台的、面向集团客户的数据分层安全访问控制方法,该方法可针对不同规模的企业,对企业内部的数据进行等级和角色的划分,保证企业能对内部用户进行细粒度的访问控制,实现企业组织结构上的横向水平管理和纵向垂直管理,同时在已经划分的等级之间,预留了待定的等级空间,以应对企业规模的变动,扩展性强;另外,通过数据加密、签名技术确保数据的安全,采用 MySQL主从镜像技术提高数据库的可靠性。
如图1所示为本发明的整体框图,本发明所提出的一种面向集团客户的数据分层安全访问控制方法包括:分布式应用程序收发模块1,数据加解密处理模块2,密钥协商模块3,数据并发处理模块4,分层访问控制模块5,数据库连接模块6,MySQL数据库模块7。本发明适用于任何能通过3G/4G/WiFi接入互联网的移动端、Web端应用程序。分布式应用程序收发模块1使用Soap协议,通过WebService网络监听类模块1-1,接收并响应移动端、Web端应用程序发送的服务请求。分布式应用程序收发模块1与数据加解密处理模块2,数据加解密处理模块2与密钥协商模块3,数据加解密处理模块2与数据并发处理模块4,数据并发处理模块4与分层访问控制模块5,分层访问控制模块5与数据库连接模块6,数据库连接模块 6与MySQL数据库模块7,均通过socket接口完成数据交互。
如图2所示为本发明的整体原理结构图,本发明主要包括五大部分:分布式应用程序收发模块1,数据加解密处理模块2,密钥协商模块3,数据并发处理模块4,分层访问控制模块5,数据库连接模块6,MySQL数据库模块7。所述的分布式应用程序收发模块1包括WebService网络监听类模块1-1,Soap协议解析模块1-2,客户方密文数据收发模块1-3。所述的数据加解密处理模块2包括服务方密文数据收发模块2-1,加解密控制模块2-2,明文数据收发模块2-3。所述的密钥协商模块3包括初始化参数模块3-1,公钥生成模块3-2,系统签名模块3-3,密钥转发模块3-4。所述的数据并发处理模块4包括并发数据收发模块4-1,数据编解码模块4-2,数据解析模块4-3,业务层数据收发模块4-4。所述的分层访问控制模块5包括访问控制层数据收发模块5-1,BLP等级访问控制模块5-2,RBAC角色访问控制模块5-3,授权数据转发模块5-4。所述的数据库连接模块6包括持久层数据收发模块6-1,数据库连接池模块6-2,数据库数据存取块6-3。所述的MySQL数据库模块7包括MySQL数据存取控制模块7-1,MySQL数据存储模块7-2。
本发明面向的大型集团客户组织架构如图3所示,按照行政区域划分,可分为总部,大区分部,省级分部,市级分部,县级分部等。其中大区分部包括华北分部、华中分部等;省级分部包括山西省分部、河北省分部等;市级分部包括太原分部、石家庄分部等;县级分部包括清徐县、正定县等。另外,总部下设直属机构,直属机构与大区分部平级。集团客户的数据库和用户也按照上述方式对数据进行等级划分,具体等级划分如图4所示。基于BLP模型和RBAC模型,为了保证数据读写的安全性,处于某一等级的用户只能读取小于等于其等级的所有或部分数据,写入大于等于其等级的所有或部分数据。其中,使用集团客户数据库的用户包括集团客户内部的企业用户和集团客户的消费者用户,图4中的普通用户对应消费者用户,为集团客户组织架构的最低等级,不隶属于上述任何一个总部、直属机构或分部。为了保证系统的可扩展性,在不同等级划分的同时,预留了一部分等级空间,当有新的机构或分部加入系统时,可为其分配相应的等级,使得本发明的访问控制方法能灵活地应对集团客户组织结构的变更。
本发明面向的小型集团客户组织架构如图5所示,小型集团客户多为创业公司,每个创业公司的组织架构,根据公司自身的性质和职能,应该能够灵活的划分。因此本发明面向的小型集团客户,在组织架构上只设立了总部,至于需要下设的分部或小组,根据公司自身需求来决定,保证系统的可扩展性并适应创业公司的灵活性。集团客户的数据库和用户也按照上述方式对数据进行等级划分,具体等级划分如图6所示。基于BLP模型和RBAC模型,为了保证数据读写的安全性,处于某一等级的用户只能读取小于等于其等级的所有或部分数据,写入大于等于其等级的所有或部分数据。其中,使用集团客户数据库的用户包括集团客户内部的企业用户和集团客户的消费者用户,图4中的普通用户对应消费者用户,为集团客户组织架构的最低等级,不隶属于上述任何一个总部、分部或小组。
本发明的服务请求流程如图7所示:
第一步,移动端/Web端应用程序向系统发送服务请求;系统启动,WebService网络监听类模块1-1在后台运行,监听并接收移动端/Web端应用程序的服务请求Soap消息,然后由 Soap协议解析模块1-2解析服务请求Soap消息,获取JSON格式的服务请求加密数据,最后由客户方密文数据收发模块1-3将服务请求加密数据发送到服务方密文数据收发模块2-1。
第二步,服务请求数据解密;服务方密文数据收发模块2-1接收服务请求加密数据,然后由加解密控制模块2-2使用密钥转发模块3-4提供的会话密钥,基于AES算法解密服务请求数据,最后由明文数据收发模块2-3将服务请求明文数据发送到并发数据收发模块4-1。
第三步,服务请求数据解码与解析;首先由并发数据收发模块4-1接收服务请求明文数据,然后由数据编解码模块4-2将服务请求明文数据解码,使其由Unicode码转化为GBK码,接着由数据解析模块4-3将JSON格式的服务请求明文数据解析为POJO类,最后由业务层数据收发模块4-4将POJO格式的用户名、角色名、目标数据对象和业务请求信息发送到访问控制层数据收发模块5-1。
第四步,服务请求访问控制;首先访问控制层数据收发模块5-1接收POJO格式的用户名、角色名、目标数据对象和业务请求信息,然后BLP等级访问控制模块5-2比较用户名的BLP等级和目标数据对象的BLP等级,接着RBAC角色访问控制模块5-3判断该用户的角色是否有访问目标数据对象的权限,如果用户BLP等级高且用户的角色有访问目标数据对象的权限,则由授权数据转发模块5-4将业务请求信息发送到持久层数据收发模块6-1,否则该用户无权限进行读写操作。
第五步,授权用户进行读写数据库操作;首先持久层数据收发模块6-1接收业务请求信息,然后数据库连接模块6-2选择数据库连接池中空闲的数据库连接,最后数据库数据存取模块6-3与MySQL数据库存取控制模块7-1建立连接,将业务请求信息写入数据库模块7,或数据库数据存取模块6-3从数据库模块7读取服务响应数据。
本发明的服务响应流程如图8所示:
第一步,授权用户获取数据库返回的服务响应明文数据;首先数据库服务启动,数据库数据存取模块6-3从数据库模块7读取服务响应结果集,然后由数据库连接模块6-2选择尚未断开的数据库连接,接着由持久层数据收发模块6-1将服务响应结果集转换为POJO类的服务响应明文数据,最后由访问控制层数据收发模块5-1发送到业务层数据收发模块4-4。
第二步,服务响应数据解析与编码;首先业务层数据收发模块4-4接收POJO类的服务响应明文数据,然后由数据解析模块4-3将服务响应明文数据解析为JSON格式的字符串,接着由数据编解码模块4-2将服务响应明文数据编码,使其由GBK码转化为Unicode码,最后由并发数据收发模块4-1将服务响应明文数据发送到明文数据收发模块2-3。
第三步,服务响应数据加密;首先明文数据收发模块2-3接收服务响应明文数据,然后由加解密控制模块2-2使用密钥转发模块3-4提供的会话密钥,基于AES算法加密服务响应数据,最后由服务方密文数据收发模块2-1将服务响应加密数据发送到客户方密文数据收发模块1-3。
第四步,系统发送服务响应到移动端/Web端应用程序;系首先客户方密文数据收发模块 1-3接收服务响应加密数据,然后Soap协议解析模块1-2将服务响应加密数据封装成Soap消息,最后由WebService网络监听类模块1-1将服务响应发送到移动端/Web端应用程序。
分布式应用程序收发模块1如图9所示,负责监听移动端、Web端应用程序发送的服务请求,实现跨平台的服务调用。所述的分布式应用程序收发模块1包括WebService网络监听类模块1-1,Soap协议解析模块1-2,客户方密文数据收发模块1-3。所述的WebService网络监听类模块1-1,基于Socket接口,采用TCP/IP协议,接收移动端、Web端应用程序发送的服务请求,转发给Soap协议解析模块1-2,同时接收Soap协议解析模块1-2的服务响应Soap消息,发送给移动端、Web端应用程序;所述的Soap协议解析模块1-2接收WebService网络监听类模块1-1发送的服务请求,解析服务请求中的Soap消息,获取服务名参数,并根据服务名参数访问WSDL(Web Services Description Language)中对应的方法,将Soap消息中的密钥协商参数和JSON格式的服务请求加密数据发送到客户方密文数据收发模块1-3;同时Soap协议解析模块1-2接收客户方密文数据收发模块1-3发送的密钥协商参数和服务响应加密数据,封装成Soap消息,发送给WebService网络监听类模块1-1;所述的客户方密文数据收发模块1-3,接收Soap协议解析模块1-2发送的密钥协商参数和服务请求加密数据,并转发到服务方密文数据收发模块2-1;同时客户方密文数据收发模块1-3接收服务方密文数据收发模块2-1的密钥协商参数和服务响应加密数据,发送到Soap协议解析模块1-2。
数据加解密处理模块2如图10所示,负责加密和解密服务请求和响应数据,同时验证数据的发送方,确保数据来源的可靠性,即数据发送方不可否认。所述的数据加解密处理模块 2包括服务方密文数据收发模块2-1,加解密控制模块2-2,明文数据收发模块2-3。所述的服务方密文数据收发模块2-1,接收客户方密文数据收发模块1-3的JSON格式的服务请求加密数据,并发送到加解密控制模块2-2,同时接收加解密控制模块2-2的服务响应加密数据,发送到客户方密文数据收发模块1-3;所述的加解密控制模块2-2,接收服务方密文数据收发模块2-1的密钥协商参数,发送到密钥转发模块3-4,同时接收密钥转发模块3-4发送的密钥协商参数和带签名的会话密钥;另外,所述的加解密控制模块2-2接收服务方密文数据收发模块2-1发送的JSON格式的服务请求加密数据,使用密钥转发模块3-4提供的会话密钥,基于 AES算法解密服务请求数据,发送到明文数据收发模块2-3;同时加解密控制模块2-2接收明文数据收发模块2-3发送的服务响应明文数据,使用密钥转发模块3-4提供的会话密钥,基于AES算法加密服务响应明文数据,将密钥协商参数和服务响应密文数据发送到服务方密文数据收发模块2-1;所述的明文数据收发模块2-3接收加解密控制模块2-2的服务请求明文数据,发送到并发数据收发模块4-1,同时接收并发数据收发模块4-1的服务响应明文数据,发送到明文数据收发模块2-3。
密钥协商模块3如图11所示,负责在每一次应用程序发送服务请求时,产生一个会话密钥,并且在密钥分发过程中可以抵抗中间人攻击。所述的密钥协商模块3包括初始化参数模块3-1,公钥生成模块3-2,系统签名模块3-3,密钥转发模块3-4。所述的初始化参数模块3-1 保存着当前实体向第三方权威机构申请公钥证书CertA和私钥SKA,并且定义了一个大素数p 以及p的本原根a,然后随机选择一个私有的随机数XA(XA<p),将这三个初始化参数、私钥SKA和公钥证书CertA发送给公钥生成模块3-2;所述的密钥生成模块3-2接收初始化参数模块3-1发送的初始化参数、私钥SKA和公钥证书CertA,计算
Figure BDA0001855618830000151
并将参数YA、私钥SKA和公钥证书CertA发送到系统签名模块3-3;系统签名模块3-3接收公钥生成模块3-2 发送的参数YA、私钥SKA和公钥证书CertA,计算当前实体参数YA的签名
Figure BDA0001855618830000152
并将签名SigA和公钥证书CertA作为密钥协商参数,发送到密钥转发模块3-4;密钥转发模块 3-4接收加解密控制模块2-2发送的密钥协商参数(签名SigB和公钥证书CertB)和系统签名模块3-3发送的密钥协商参数(签名SigA和公钥证书CertA),使用公钥证书CertB中的公钥 PKB,通过签名验证恢复算法计算
Figure BDA0001855618830000161
(其中B是密钥协商的对端实体,YB的产生方式与YA相同,即
Figure BDA0001855618830000162
密钥协商双方的大素数p以及p的本原根a相同),从而验证数据来源的可靠性,再计算
Figure 1
得到会话密钥,并将会话密钥KA和密钥协商参数(签名SigA和公钥证书CertA)发送到加解密控制模块2-2。
系统的密钥协商原理如图12所示:
第一步,实体A从初始化参数模块3-1获取一个大素数p以及p的本原根a,然后随机选择一个私有的随机数XA(XA<p),将这三个初始化参数、私钥SKA和公钥证书CertA发送给公钥生成模块3-2;密钥生成模块3-2计算
Figure BDA0001855618830000164
并将参数YA、私钥SKA和公钥证书CertA发送到系统签名模块3-3;系统签名模块3-3计算当前实体参数YA的签名
Figure BDA0001855618830000165
并将签名
Figure BDA0001855618830000166
和公钥证书CertA发送给实体B;
第二步,实体B从初始化参数模块3-1获取一个大素数p以及p的本原根a,然后随机选择一个私有的随机数XB(XB<p),将这三个初始化参数、私钥SKB和公钥证书CertB发送给公钥生成模块3-2;密钥生成模块3-2计算
Figure BDA0001855618830000167
并将参数YB、私钥SKB和公钥证书CertB发送到系统签名模块3-3;系统签名模块3-3计算当前实体参数YB的签名
Figure BDA0001855618830000168
并将签名
Figure BDA0001855618830000169
和公钥证书CertB发送给实体A;
第三步,实体A的密钥转发模块3-4接收加解密控制模块2-2发送的密钥协商参数(签名SigB和公钥证书CertB),使用公钥证书CertB中的公钥PKB,通过签名验证恢复算法计算
Figure BDA00018556188300001610
从而验证数据来源的可靠性,再计算
Figure 1
得到会话密钥;
第四步,实体B的密钥转发模块3-4接收加解密控制模块2-2发送的密钥协商参数(签名SigA和公钥证书CertA),使用公钥证书CertA中的公钥PKA,通过签名验证恢复算法计算
Figure BDA00018556188300001612
从而验证数据来源的可靠性,再计算
Figure 1
得到会话密钥。
数据并发处理模块4如图13所示,负责解析JSON格式封装的服务请求,将解析产生的业务数据转发给分层访问控制模块5,并采用高速缓存技术处理重复的服务请求,提高系统的并发性能。所述的数据并发处理模块4包括并发数据收发模块4-1,数据编解码模块4-2,数据解析模块4-3,业务层数据收发模块4-4。所述的并发数据收发模块4-1基于socket接口,通过TCP/IP传输协议,接收明文数据收发模块2-3发送的JSON格式的服务请求明文数据,并转发到数据编解码模块4-2,同时接收数据编解码模块4-2的服务响应明文数据,发送到并发数据收发模块4-1;所述的数据编解码模块4-2,接收并发数据收发模块4-1的服务请求明文数据,将数据的编码格式由Unicode编码转为GBK编码,发送到数据解析模块4-3;同时数据编解码模块4-2接收数据解析模块4-3的GBK编码的服务响应明文数据,转换为Unicode 编码,然后发送到并发数据收发模块4-1;所述的数据解析模块4-3接收据编解码模块4-2的 JSON格式的服务请求明文数据,并将服务请求明文数据解析为POJO(PlainOrdinary Java Object类,将POJO类中的用户名、角色名、目标数据对象和业务请求信息发送到业务层数据收发模块4-4;其中,所述的数据解析模块4-3采用高速缓存技术,将服务请求明文数据存储在硬盘中的log日志文件,默认每隔30min清理log日志文件中的过期服务请求明文数据,如果高速缓存中存在相同的服务请求明文数据,就直接发送高速缓存中的服务响应明文数据到数据编解码模块4-2;同时数据解析模块4-3接收业务层数据收发模块4-4的服务响应明文数据,将服务响应明文数据由POJO类转换为JSON格式,发送到数据编解码模块4-2;所述的业务层数据收发模块4-4,接收数据解析模块4-3POJO格式的用户名、角色名、目标数据对象和业务请求信息,发送到访问控制层数据收发模块5-1,同时接收访问控制层数据收发模块5-1POJO格式的服务响应明文数据,发送数据解析模块4-3。
分层访问控制模块5如图14所示,所述的分层访问控制模块5是自主设计的基于BLP、 RBAC模型的分层安全访问控制模块,该模块主要适用于大型集团客户(分为19个等级层次) 和小型集团客户(分为5个等级层次),并为集团客户的不同实体(如总部、分部、部门、小组等)分配不同的等级和角色;通过等级和角色两层访问控制机制,判断属于某一等级的用户是否拥有访问数据的权限,使得集团客户在组织结构上,实现纵向垂直管理和横向水平管理,同时保证数据的安全性。所述的分层访问控制模块5包括访问控制层数据收发模块5-1, BLP等级访问控制模块5-2,RBAC角色访问控制模块5-3,授权数据转发模块5-4。所述的访问控制层数据收发模块5-1接收业务层数据收发模块4-4发送的用户名、角色名、目标数据对象和业务请求信息,并转发到BLP等级访问控制模块5-2,同时接收BLP等级访问控制模块5-2发送的异常服务响应明文数据;所述的BLP等级访问控制模块5-2是自主设计的安全访问控制模块,该模块按照行政区域或项目实际需求,基于BLP模型,为集团客户的不同实体赋予不同的等级,同时,为不同实体对应的用户和数据库数据也赋予与实体相同的等级,使得高等级的用户能“读”同等级或低等级的数据,低等级的用户能“写”同等级或高等级的数据;同时,该模块在对实体划分等级时,在不同等级的实体之间,预留了待定的等级空间,以应对企业规模的变动(如有新的实体加入),扩展性强;此外,所述的BLP等级访问控制模块5-2接收访问控制层数据收发模块5-1发送的用户名、角色名、目标数据对象和业务请求信息,并比较用户名的BLP等级和目标数据对象的BLP等级,如果用户名的BLP等级高,就发送用户名、角色名、目标数据对象和业务请求信息到RBAC角色访问控制模块5-3,否则发送异常服务响应明文数据到访问控制层数据收发模块5-1;所述的RBAC角色访问控制模块5-3是自主设计的RBAC安全访问控制模块,该模块基于RBAC模型,为集团客户的不同实体分配角色,用户即使通过了等级访问控制机制,也只能访问被授权的角色所对应的实体数据,解决同等级实体间数据可以不受限制、相互访问的问题;此外,所述的RBAC角色访问控制模块5-3接收BLP等级访问控制模块5-2发送的用户名、角色名、目标数据对象和业务请求信息,并判断该用户的角色是否有访问目标数据对象的权限,如果有权限,就发送业务请求信息到授权数据转发模块5-4,否则发送异常服务响应明文数据到BLP等级访问控制模块5-2;所述的授权数据转发模块5-4,接收RBAC角色访问控制模块5-3发送的业务请求信息,并转发到持久层数据收发模块6-1,同时接收持久层数据收发模块6-1的服务响应明文数据,发送到访问控制层数据收发模块5-1。
系统的分层安全访问控制流程如图15所示:
第一步,系统的访问控制层数据收发模块5-1接收用户发送的服务请求,解析并获取目标数据对象、业务请求信息和用户对应的角色集合,角色集合的每个元素包括角色名(用户隶属于集团客户的组织结构)以及对应角色等级;然后将用户名、目标数据对象、业务请求信息和每个集合元素依次发送到BLP等级访问控制模块5-2;
第二步,BLP等级访问控制模块5-2解析每一个集合元素,获取角色名和角色等级,并将角色等级与目标数据对象的等级作比较,如果角色等级大于目标数据对象的等级,就发送用户名、角色名、目标数据对象、业务请求信息到RBAC角色访问控制模块5-3,否则发送异常服务响应明文数据到访问控制层数据收发模块5-1,说明该角色无访问目标数据对象的权限;
第三步,RBAC角色访问控制模块5-3根据角色读写权限表,判断该角色是否有访问目标数据对象的权限,如果有权限,就发送业务请求信息到授权数据转发模块5-4,否则发送异常服务响应明文数据到BLP等级访问控制模块5-2,说明该角色无访问目标数据对象的权限;
第四步,授权数据转发模块5-4,接收RBAC角色访问控制模块5-3发送的业务请求信息,并转发到持久层数据收发模块6-1,完成对数据库的读写操作,读写操作完成后,相应的服务响应数据通过访问控制层数据收发模块5-1发送给用户。
数据库连接模块6如图16所示,负责建立数据库连接池,减小频繁创建和销毁数据库连接带来的性能损耗,提高系统对数据的读写效率。所述的数据库连接模块6包括持久层数据收发模块6-1,数据库连接池模块6-2,数据库数据存取块6-3。所述的持久层数据收发模块 6-1接收授权数据转发模块5-4的业务请求信息,解析为相应的业务请求SQL语句,发送到数据库连接池模块6-2,同时接收数据库连接池模块6-2发送的服务响应结果集,将服务响应结果集转换为POJO类的服务响应明文数据,发送到持久层数据收发模块6-1;所述的数据库连接池模块6-2由一组可重用的数据库连接和请求队列组成,数据库连接池中的数据库连接初始值默认为10,请求队列接收持久层数据收发模块6-1发送的业务请求SQL语句,然后取出数据库连接池中的一个连接作为载体,将业务请求SQL语句发送到数据库数据存取块6-3;同时数据库连接池模块6-2中的数据库连接接收数据库数据存取块6-3的服务响应结果集,发送到持久层数据收发模块6-1;其中,数据库连接在数据读写操作完毕后,自动被数据库连接池回收并重复利用,可以减少反复创建和销毁数据库连接带来的系统开销和损耗,创建数据库连接是一个费时的活动,每次都要花费0.05s~1s的时间;另外,数据库连接池可设置 timeout属性,当超过timeout属性对应的时间没有访问数据库,并且当前数据库连接数超过初始值时,数据库连接池会自动销毁多余的数据库连接,使数据库连接池中的数据库连接保持在初始值;所述的数据库数据存取块6-3接收数据库连接池模块6-2发送的业务请求SQL 语句,与MySQL数据存取控制模块7-1建立TCP/IP连接,将业务请求SQL语句发送到MySQL 数据存取控制模块7-1;同时数据库数据存取块6-3接收MySQL数据存取控制模块7-1的服务响应结果集,发送到数据库连接池模块6-2。
MySQL数据库模块7如图17所示,所述的MySQL数据库模块7是自主设计的模块化数据存储解决方案,负责模块化存储集团客户数据,采用主从镜像技术提高数据库的读写效率,保障数据库的高可靠性,并采用哈希函数保证用户隐私数据的安全。所述的MySQL数据库模块7包括MySQL数据存取控制模块7-1,MySQL数据存储模块7-2。所述的MySQL 数据存取控制模块7-1,接收并解析数据库数据存取块6-3发送的业务请求SQL语句,比较该SQL语句安全等级与MySQL数据库安全等级,如果MySQL数据库安全等级较高,就将解析后的SQL语句指令发送到MySQL数据存储模块7-2,否则发送异常服务响应结果集到数据库数据存取块6-3;同时MySQL数据存取控制模块7-1接收MySQL数据存储模块7-2 的服务响应结果集,发送到数据库数据存取块6-3;所述的MySQL数据存储模块7-2,分为主数据库和从数据库,主数据库按照模块化的方式分类存储集团客户的业务数据和用户数据,其中用户的隐私数据(如密码)采用哈希值存储,防止用户隐私泄露;并且该模块采用MySQL 主从镜像的方式,根据MySQL日志文件,将主数据库数据异步复制到从数据库,完成数据备份,保障了数据库的高可靠性;另外,所述的MySQL数据存储模块7-2接收MySQL数据存取控制模块7-1发送的SQL语句指令,如果是“写”指令,就访问主数据库;如果是“读”指令,就访问从数据库,将读写操作分离,从而减少主数据库的负载,提高读写效率,然后将得到的服务响应结果集发送到MySQL数据存取控制模块7-1。
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作任何其他形式的限制,而依据本发明的技术实质所作的任何修改或等同变化,仍属于本发明所要求保护的范围。

Claims (1)

1.一种面向集团客户的数据分层安全访问控制方法,其特征在于:包括分布式应用程序收发模块(1)、数据加解密处理模块(2)、密钥协商模块(3)、数据并发处理模块(4)、分层访问控制模块(5)、数据库连接模块(6)和MySQL数据库模块(7);其中:分布式应用程序收发模块(1)负责监听移动端、Web端应用程序发送的服务请求,实现跨平台的服务调用;数据加解密处理模块(2)负责加密和解密服务请求和响应数据,同时验证数据的发送方,确保数据来源的可靠性,即数据发送方不可否认;密钥协商模块(3)在每一次应用程序发送服务请求时,产生一个会话密钥,并且在密钥分发过程中可以抵抗中间人攻击;数据并发处理模块(4)负责解析JSON格式封装的服务请求,将解析产生的业务数据转发给分层访问控制模块(5),并采用硬盘中的log日志文件作为缓存池,处理重复的服务请求,提高系统的并发性能;分层访问控制模块(5)采用自主设计的基于BLP、RBAC模型的分层安全访问控制模块,负责集团客户的数据分层,并判断用户是否拥有访问数据的权限,使得集团客户在组织结构上,实现纵向垂直管理和横向水平管理,同时保证数据的安全性;数据库连接模块(6)负责建立数据库连接池,减小频繁创建和销毁数据库连接带来的性能损耗,提高系统对数据的读写效率;MySQL数据库模块(7)是自主设计的模块化数据存储解决方案,负责模块化存储集团客户数据,采用主从镜像技术提高数据库的读写效率,保障数据库的高可靠性,并采用哈希函数保证用户隐私数据的安全;
所述的分布式应用程序收发模块(1)包括WebService网络监听类模块(1-1)、Soap协议解析模块(1-2)以及客户方密文数据收发模块(1-3);负责监听移动端、Web端应用程序发送的服务请求,实现跨平台的服务调用;
所述的WebService网络监听类模块(1-1),基于Socket接口,采用TCP/IP协议,接收移动端、Web端应用程序发送的服务请求,转发给Soap协议解析模块(1-2),同时接收Soap协议解析模块(1-2)的服务响应Soap消息,发送给移动端、Web端应用程序;所述的Soap协议解析模块(1-2)接收WebService网络监听类模块(1-1)发送的服务请求,解析服务请求中的Soap消息,获取服务名参数,并根据服务名参数访问WSDL中对应的方法,将Soap消息中的密钥协商参数和JSON格式的服务请求加密数据发送到客户方密文数据收发模块(1-3);同时Soap协议解析模块(1-2)接收客户方密文数据收发模块(1-3)发送的密钥协商参数和服务响应加密数据,封装成Soap消息,发送给WebService网络监听类模块(1-1);所述的客户方密文数据收发模块(1-3),接收Soap协议解析模块(1-2)发送的密钥协商参数和服务请求加密数据,并转发到服务方密文数据收发模块(2-1);同时客户方密文数据收发模块(1-3)接收服务方密文数据收发模块(2-1)的密钥协商参数和服务响应加密数据,发送到Soap协议解析模块(1-2);
所述的数据加解密处理模块(2)包括服务方密文数据收发模块(2-1)、加解密控制模块(2-2)以及明文数据收发模块(2-3);负责加密和解密服务请求和响应数据,同时验证数据的发送方,确保数据来源的可靠性,即数据发送方不可否认;
所述的服务方密文数据收发模块(2-1),接收客户方密文数据收发模块(1-3)的JSON格式的服务请求加密数据,并发送到加解密控制模块(2-2),同时接收加解密控制模块(2-2)的服务响应加密数据,发送到客户方密文数据收发模块(1-3);所述的加解密控制模块(2-2),接收服务方密文数据收发模块(2-1)的密钥协商参数,发送到密钥转发模块(3-4),同时接收密钥转发模块(3-4)发送的密钥协商参数和带签名的会话密钥;另外,所述的加解密控制模块(2-2)接收服务方密文数据收发模块(2-1)发送的JSON格式的服务请求加密数据,使用密钥转发模块(3-4)提供的会话密钥,基于AES算法解密服务请求数据,发送到明文数据收发模块(2-3);同时加解密控制模块(2-2)接收明文数据收发模块(2-3)发送的服务响应明文数据,使用密钥转发模块(3-4)提供的会话密钥,基于AES算法加密服务响应明文数据,将密钥协商参数和服务响应密文数据发送到服务方密文数据收发模块(2-1);所述的明文数据收发模块(2-3)接收加解密控制模块(2-2)的服务请求明文数据,发送到并发数据收发模块(4-1),同时接收并发数据收发模块(4-1)的服务响应明文数据,发送到明文数据收发模块(2-3);
所述的密钥协商模块(3)包括初始化参数模块(3-1)、公钥生成模块(3-2)、系统签名模块(3-3)以及密钥转发模块(3-4);负责在每一次应用程序发送服务请求时,产生一个会话密钥,并且在密钥分发过程中可以抵抗中间人攻击;
所述的初始化参数模块(3-1)保存着当前实体向第三方权威机构申请公钥证书CertA和私钥SKA,并且定义了一个大素数p以及p的本原根a,然后随机选择一个私有的随机数XA(XA<p),将这三个初始化参数、私钥SKA和公钥证书CertA发送给公钥生成模块(3-2);所述的公钥生成模块(3-2)接收初始化参数模块(3-1)发送的初始化参数、私钥SKA和公钥证书CertA,计算
Figure FDA0002781930060000031
并将参数YA、私钥SKA和公钥证书CertA发送到系统签名模块(3-3);系统签名模块(3-3)接收公钥生成模块(3-2)发送的参数YA、私钥SKA和公钥证书CertA,计算当前实体参数YA的签名
Figure FDA0002781930060000032
并将签名SigA和公钥证书CertA作为密钥协商参数,发送到密钥转发模块(3-4);密钥转发模块(3-4)接收加解密控制模块(2-2)发送的密钥协商参数,即签名SigB和公钥证书CertB和系统签名模块(3-3)发送的密钥协商参数,即签名SigA和公钥证书CertA,使用公钥证书CertB中的公钥PKB,通过签名验证恢复算法计算
Figure FDA0002781930060000033
即其中B是密钥协商的对端实体,YB的产生方式与YA相同,即
Figure FDA0002781930060000034
密钥协商双方的大素数p以及p的本原根a相同,从而验证数据来源的可靠性,再计算
Figure FDA0002781930060000035
得到会话密钥,并将会话密钥KA和密钥协商参数,即签名SigA和公钥证书CertA,发送到加解密控制模块(2-2);
所述的数据并发处理模块(4)包括并发数据收发模块(4-1)、数据编解码模块(4-2)、数据解析模块(4-3)以及业务层数据收发模块(4-4);负责解析JSON格式封装的服务请求,将解析产生的业务数据转发给分层访问控制模块(5),并采用硬盘中的log日志文件作为缓存池,处理重复的服务请求,提高系统的并发性能;
所述的并发数据收发模块(4-1)基于socket接口,通过TCP/IP传输协议,接收明文数据收发模块(2-3)发送的JSON格式的服务请求明文数据,并转发到数据编解码模块(4-2),同时接收数据编解码模块(4-2)的服务响应明文数据,发送到并发数据收发模块(4-1);所述的数据编解码模块(4-2),接收并发数据收发模块(4-1)的服务请求明文数据,将数据的编码格式由Unicode编码转为GBK编码,发送到数据解析模块(4-3);同时数据编解码模块(4-2)接收数据解析模块(4-3)的GBK编码的服务响应明文数据,转换为Unicode编码,然后发送到并发数据收发模块(4-1);所述的数据解析模块(4-3)接收据编解码模块(4-2)的JSON格式的服务请求明文数据,并将服务请求明文数据解析为POJO类,将POJO类中的用户名、角色名、目标数据对象和业务请求信息发送到业务层数据收发模块(4-4);其中,所述的数据解析模块(4-3)采用高速缓存技术,将服务请求明文数据存储在硬盘中的log日志文件,默认每隔30min清理log日志文件中的过期服务请求明文数据,如果缓存中存在相同的服务请求明文数据,就直接发送高速缓存中的服务响应明文数据到数据编解码模块(4-2);同时数据解析模块(4-3)接收业务层数据收发模块(4-4)的服务响应明文数据,将服务响应明文数据由POJO类转换为JSON格式,发送到数据编解码模块(4-2);所述的业务层数据收发模块(4-4),接收数据解析模块(4-3)POJO格式的用户名、角色名、目标数据对象和业务请求信息,发送到访问控制层数据收发模块(5-1),同时接收访问控制层数据收发模块(5-1)POJO格式的服务响应明文数据,发送数据解析模块(4-3);
所述的分层访问控制模块(5)包括访问控制层数据收发模块(5-1)、BLP等级访问控制模块(5-2)、RBAC角色访问控制模块(5-3)以及授权数据转发模块(5-4);所述的分层访问控制模块(5)是自主设计的基于BLP、RBAC模型的分层安全访问控制模块,该模块主要适用于大型集团客户和小型集团客户,并为集团客户的不同实体,分配不同的等级和角色;通过等级和角色两层访问控制机制,判断属于某一等级的用户是否拥有访问数据的权限,使得集团客户在组织结构上,实现纵向垂直管理和横向水平管理,同时保证数据的安全性;
所述的访问控制层数据收发模块(5-1)接收业务层数据收发模块(4-4)发送的用户名、角色名、目标数据对象和业务请求信息,并转角色发到BLP等级访问控制模块(5-2),同时接收BLP等级访问控制模块(5-2)发送的异常服务响应明文数据;所述的BLP等级访问控制模块(5-2)是自主设计的安全访问控制模块,该模块按照行政区域或项目实际需求,基于BLP模型,为集团客户的不同实体赋予不同的等级,同时,为不同实体对应的用户和数据库数据也赋予与实体相同的等级,使得高等级的用户能“读”同等级或低等级的数据,低等级的用户能“写”同等级或高等级的数据;同时,该模块在对实体划分等级时,在不同等级的实体之间,预留了待定的等级空间,以应对企业规模的变动,扩展性强;此外,所述的BLP等级访问控制模块(5-2)接收访问控制层数据收发模块(5-1)发送的用户名、角色名、目标数据对象和业务请求信息,并比较用户名的BLP等级和目标数据对象的BLP等级,如果用户名的BLP等级高,就发送用户名、角色名、目标数据对象和业务请求信息到RBAC角色访问控制模块(5-3),否则发送异常服务响应明文数据到访问控制层数据收发模块(5-1);所述的RBAC角色访问控制模块(5-3)是自主设计的RBAC安全访问控制模块,该模块基于RBAC模型,为集团客户的不同实体分配角色,用户即使通过了等级访问控制机制,也只能访问被授权的角色所对应的实体数据,解决同等级实体间数据可以不受限制、相互访问的问题;此外,所述的RBAC角色访问控制模块(5-3)接收BLP等级访问控制模块(5-2)发送的用户名、角色名、目标数据对象和业务请求信息,并判断该用户的角色是否有访问目标数据对象的权限,如果有权限,就发送业务请求信息到授权数据转发模块(5-4),否则发送异常服务响应明文数据到BLP等级访问控制模块(5-2);所述的授权数据转发模块(5-4),接收RBAC角色访问控制模块(5-3)发送的业务请求信息,并转发到持久层数据收发模块(6-1),同时接收持久层数据收发模块(6-1)的服务响应明文数据,发送到访问控制层数据收发模块(5-1);
所述大型集团客户分为19个等级层次,小型集团客户分为5个等级层次;
所述的数据库连接模块(6)包括持久层数据收发模块(6-1)、数据库连接池模块(6-2)以及数据库数据存取块(6-3);负责建立数据库连接池,减小频繁创建和销毁数据库连接带来的性能损耗,提高系统对数据的读写效率;
所述的持久层数据收发模块(6-1)接收授权数据转发模块(5-4)的业务请求信息,解析为相应的业务请求SQL语句,发送到数据库连接池模块(6-2),同时接收数据库连接池模块(6-2)发送的服务响应结果集,将服务响应结果集转换为POJO类的服务响应明文数据,发送到持久层数据收发模块(6-1);所述的数据库连接池模块(6-2)由一组可重用的数据库连接和请求队列组成,数据库连接池中的数据库连接初始值默认为10,请求队列接收持久层数据收发模块(6-1)发送的业务请求SQL语句,然后取出数据库连接池中的一个连接作为载体,将业务请求SQL语句发送到数据库数据存取块(6-3);同时数据库连接池模块(6-2)中的数据库连接接收数据库数据存取块(6-3)的服务响应结果集,发送到持久层数据收发模块(6-1);其中,数据库连接在数据读写操作完毕后,自动被数据库连接池回收并重复利用,可以减少反复创建和销毁数据库连接带来的系统开销和损耗,创建数据库连接是一个费时的活动,每次都要花费0.05s~1s的时间;另外,数据库连接池可设置timeout属性,当超过timeout属性对应的时间没有访问数据库,并且当前数据库连接数超过初始值时,数据库连接池会自动销毁多余的数据库连接,使数据库连接池中的数据库连接保持在初始值;所述的数据库数据存取块(6-3)接收数据库连接池模块(6-2)发送的业务请求SQL语句,与MySQL数据存取控制模块(7-1)建立TCP/IP连接,将业务请求SQL语句发送到MySQL数据存取控制模块(7-1);同时数据库数据存取块(6-3)接收MySQL数据存取控制模块(7-1)的服务响应结果集,发送到数据库连接池模块(6-2);
所述的MySQL数据库模块(7)包括MySQL数据存取控制模块(7-1)和MySQL数据存储模块(7-2);所述的MySQL数据库模块(7)是自主设计的模块化数据存储解决方案,负责模块化存储集团客户数据,采用主从镜像技术提高数据库的读写效率,保障数据库的高可靠性,并采用哈希函数保证用户隐私数据的安全;
所述的MySQL数据存取控制模块(7-1),接收并解析数据库数据存取块(6-3)发送的业务请求SQL语句,比较该SQL语句安全等级与MySQL数据库安全等级,如果MySQL数据库安全等级较高,就将解析后的SQL语句指令发送到MySQL数据存储模块(7-2),否则发送异常服务响应结果集到数据库数据存取块(6-3);同时MySQL数据存取控制模块(7-1)接收MySQL数据存储模块(7-2)的服务响应结果集,发送到数据库数据存取块(6-3);所述的MySQL数据存储模块(7-2),分为主数据库和从数据库,主数据库按照模块化的方式分类存储集团客户的业务数据和用户数据,其中用户的隐私数据采用哈希值存储,防止用户隐私泄露;并且该模块采用MySQL主从镜像的方式,根据MySQL日志文件,将主数据库数据异步复制到从数据库,完成数据备份,保障了数据库的高可靠性;另外,所述的MySQL数据存储模块(7-2)接收MySQL数据存取控制模块(7-1)发送的SQL语句指令,如果是“写”指令,就访问主数据库;如果是“读”指令,就访问从数据库,将读写操作分离,从而减少主数据库的负载,提高读写效率,然后将得到的服务响应结果集发送到MySQL数据存取控制模块(7-1)。
CN201811313419.7A 2018-11-06 2018-11-06 一种面向集团客户的数据分层安全访问控制方法 Active CN109525570B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811313419.7A CN109525570B (zh) 2018-11-06 2018-11-06 一种面向集团客户的数据分层安全访问控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811313419.7A CN109525570B (zh) 2018-11-06 2018-11-06 一种面向集团客户的数据分层安全访问控制方法

Publications (2)

Publication Number Publication Date
CN109525570A CN109525570A (zh) 2019-03-26
CN109525570B true CN109525570B (zh) 2021-01-12

Family

ID=65774296

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811313419.7A Active CN109525570B (zh) 2018-11-06 2018-11-06 一种面向集团客户的数据分层安全访问控制方法

Country Status (1)

Country Link
CN (1) CN109525570B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111049657B (zh) * 2019-12-10 2021-04-20 成都理工大学 一种can总线网络设备节点访问权限管理方法及系统
CN111245604B (zh) * 2019-12-31 2023-07-04 深圳前海智安信息科技有限公司 一种服务器数据安全交互系统
CN113378723B (zh) * 2021-06-13 2023-08-01 国网福建省电力有限公司 一种基于深度残差网络的输变电线路隐患自动安全识别系统
CN113821794B (zh) * 2021-09-14 2023-08-18 北京八分量信息科技有限公司 一种分布式的可信计算系统及方法
CN114169793A (zh) * 2021-12-15 2022-03-11 国家工业信息安全发展研究中心 一种工业互联网平台应用评价方法及其评价系统
CN114500628A (zh) * 2021-12-30 2022-05-13 天翼云科技有限公司 一种连接选择方法及装置
CN114386016B (zh) * 2022-01-13 2024-03-22 北京工业大学 基于可信计算的应用程序安全访问的全过程控制方法
CN115514585B (zh) * 2022-11-23 2023-03-24 北京数字众智科技有限公司 一种数据库安全管理方法和系统
CN116760631B (zh) * 2023-08-09 2023-10-31 国网浙江省电力有限公司 基于调控云平台的多业务数据分级管控方法及系统
CN117834304B (zh) * 2024-03-05 2024-05-03 东方电气风电股份有限公司 自主可控的主控网络安全防护系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081605A (zh) * 2009-11-30 2011-06-01 中国移动通信集团上海有限公司 基于数据仓库的数据封装装置及业务数据获取方法
CN104378386A (zh) * 2014-12-09 2015-02-25 浪潮电子信息产业股份有限公司 一种云数据机密性保护和访问控制的方法
CN104484617A (zh) * 2014-12-05 2015-04-01 中国航空工业集团公司第六三一研究所 一种基于多策略融合的数据库访问控制方法
CN107480251A (zh) * 2017-08-14 2017-12-15 福建新大陆软件工程有限公司 一种管理数据访问的系统
CN107612929A (zh) * 2017-10-18 2018-01-19 南京航空航天大学 一种基于信息流的多级安全访问控制模型

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9509664B2 (en) * 2014-06-16 2016-11-29 Verizon Deutschland Gmbh Data exchange in the internet of things

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081605A (zh) * 2009-11-30 2011-06-01 中国移动通信集团上海有限公司 基于数据仓库的数据封装装置及业务数据获取方法
CN104484617A (zh) * 2014-12-05 2015-04-01 中国航空工业集团公司第六三一研究所 一种基于多策略融合的数据库访问控制方法
CN104378386A (zh) * 2014-12-09 2015-02-25 浪潮电子信息产业股份有限公司 一种云数据机密性保护和访问控制的方法
CN107480251A (zh) * 2017-08-14 2017-12-15 福建新大陆软件工程有限公司 一种管理数据访问的系统
CN107612929A (zh) * 2017-10-18 2018-01-19 南京航空航天大学 一种基于信息流的多级安全访问控制模型

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于行为的多级访问控制模型;苏铓;《计算机研究与发展》;20141231;全文 *
数据资产安全管理平台关键技术研究与实现;李庆阳;《中国优秀硕士学位论文全文数据库 信息科技辑》;20150815;全文 *

Also Published As

Publication number Publication date
CN109525570A (zh) 2019-03-26

Similar Documents

Publication Publication Date Title
CN109525570B (zh) 一种面向集团客户的数据分层安全访问控制方法
CN111488598B (zh) 访问控制方法、装置、计算机设备和存储介质
Seiger et al. SecCSIE: a secure cloud storage integrator for enterprises
US8984611B2 (en) System, apparatus and method for securing electronic data independent of their location
Murala et al. Secure dynamic groups data sharing with modified revocable attribute-based encryption in cloud
Tse et al. Emerging issues in cloud storage security: encryption, key management, data redundancy, trust mechanism
Zheng et al. Toward assured data deletion in cloud storage
WO2013008353A1 (ja) データ分散保管システム
Yu et al. Data security in cloud computing
Thamizhselvan et al. Data security model for Cloud Computing using V-GRT methodology
CN109934008B (zh) 一种基于权限等级的多任务文档管理系统
Gunjal et al. Multi authority access control mechanism for role based access control for data security in the cloud environment
Han et al. A decentralized document management system using blockchain and secret sharing
Tiwari et al. A review of data security and privacy issues over SaaS
Adlam et al. Applying Blockchain Technology to Security-Related Aspects of Electronic Healthcare Record Infrastructure
Mudgal et al. ‘International journal of engineering sciences & research technology enhancing data security using encryption and splitting technique over multi-cloud environment
Su et al. Study of Cloud Computing Security Service Model
Bagaeen et al. Storage as a service (staas) security challenges and solutions in cloud computing environment: An evaluation review
AU2021104564A4 (en) Smart framework for providing privacy and protection in block chain based private transactions using cloud computing approach
Kaushik et al. Cloud computing security: attacks, threats, risk and solutions
Rahim et al. Secured Image Sharing and Deletion in the Cloud Storage Using Access Policies
Liu et al. Secure Resource Sharing on Hyperledger Fabric based on CP-ABE
Sathana et al. Three level security system for dynamic group in cloud
Fu et al. A Design of Sharing Algorithm Based on Attribute–Based Encryption in Cloud Storage Environment
Agarwal A Safe and Resilient Cryptographic System for Dynamic Cloud Groups with Secure Data Sharing and Efficient User Revocation

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
GR01 Patent grant
GR01 Patent grant