CN117131493A - 权限管理系统构建方法、装置、设备及存储介质 - Google Patents

权限管理系统构建方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN117131493A
CN117131493A CN202310850059.9A CN202310850059A CN117131493A CN 117131493 A CN117131493 A CN 117131493A CN 202310850059 A CN202310850059 A CN 202310850059A CN 117131493 A CN117131493 A CN 117131493A
Authority
CN
China
Prior art keywords
message queue
module
rights management
constructing
configuring
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
Application number
CN202310850059.9A
Other languages
English (en)
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.)
Dongpu Software Co Ltd
Original Assignee
Dongpu Software Co Ltd
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 Dongpu Software Co Ltd filed Critical Dongpu Software Co Ltd
Priority to CN202310850059.9A priority Critical patent/CN117131493A/zh
Publication of CN117131493A publication Critical patent/CN117131493A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/41User authentication where a single sign-on provides access to a plurality of computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • 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

Landscapes

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

Abstract

本发明涉及权限管理领域,公开了权限管理系统构建方法、装置、设备及存储介质,该方法用于构建基于IDAAS的权限管理系统,该系统支持高并发,每秒事务请求处理数能够达到10000次。该方法包括:搭建基于IDAAS的系统基础架构,系统基础架构包括身份验证模块、访问控制模块以及用户角色和权限管理模块;将用于权限管理更新的更新机制嵌入系统基础架构,得到第一系统;在第一系统上配置主从复制模式的Redis缓存数据库,得到第二系统;在第二系统上配置用于对任务进行异步处理的消息队列,得到第三系统;在第三系统上建立分发型网关服务,得到IDAAS权限管理系统。

Description

权限管理系统构建方法、装置、设备及存储介质
技术领域
本发明涉及权限管理技术领域,尤其涉及一种权限管理系统构建方法、装置、设备及存储介质。
背景技术
企业内部的业务系统由权限管理系统来管理登录和权限管控。目前的权限管理系统每秒事务请求处理数为一般4000次。随着业务的发展,企业内部业务系统不断新增,在业务高峰期,要支持在大量用户同时访问企业内部系统的场景下,保障系统的正常运行,现有的权限管理系统容易发生故障,一旦发生故障,直接影响所有业务系统的使用,影响业务开展。
因此,现有技术还有待改进和发展。
发明内容
本发明提供了一种权限管理系统构建方法、装置、设备及存储介质,用于构建基于IDAAS的权限管理系统,该系统支持高并发,每秒事务请求处理数能够达到10000次。
本发明第一方面提供了一种权限管理系统构建方法,所述权限管理系统构建方法包括:
搭建基于IDAAS的系统基础架构,所述系统基础架构包括身份验证模块、访问控制模块以及用户角色和权限管理模块;将用于权限管理更新的更新机制嵌入所述系统基础架构,得到第一系统;在所述第一系统上配置主从复制模式的Redis缓存数据库,得到第二系统;在所述第二系统上配置用于对任务进行异步处理的消息队列,得到第三系统;在所述第三系统上建立分发型网关服务,得到IDAAS权限管理系统。
可选的,在本发明第一方面的第一种实现方式中,所述搭建基于IDAAS的系统基础架构,所述系统基础架构包括身份验证模块、访问控制模块以及用户角色和权限管理模块,包括:构建基于SAML单点登录和哈希算法加密的身份验证模块;构建基于角色基准的访问控制模型的访问控制模块;构建基于分层授权的用户角色和权限管理模块;根据所述身份验证模块、所述访问控制模块以及所述用户角色和权限管理模块搭建基于IDAAS的系统基础架构。
可选的,在本发明第一方面的第二种实现方式中,所述构建基于分层授权的用户角色和权限管理模块,包括:确定角色层级结构;将系统中的资源和操作分类为不同的权限级别;基于角色基准的访问控制模型创建不同的角色,并根据角色的层级和权限级别的类别,对不同资源和操作设置相应的访问权限
可选的,在本发明第一方面的第三种实现方式中,所述将用于权限管理更新的更新机制嵌入所述系统基础架构,得到第一系统,包括:确定系统更新频率和用于存储权限管理更新数据的数据源;设置用于触发从所述数据源中获取权限管理更新数据的定时任务,并根据所述更新频率和所述定时任务形成用于权限管理更新的更新机制;将所述更新机制嵌入系统基础架构,得到第一系统。
可选的,在本发明第一方面的第四种实现方式中,所述在所述第一系统上配置主从复制模式的Redis缓存数据库,得到第二系统,包括:在所述第一系统上配置Redis主服务器,将其中一个实例配置为主节点;在所述第一系统上配置Redis从服务器,将剩余的实例配置为从节点,并将所述从节点连接到所述主节点;验证所述Redis主服务器和所述Redis从服务器的主从复制状态,得到第二系统。
可选的,在本发明第一方面的第五种实现方式中,所述在所述第二系统上配置用于对任务进行异步处理的消息队列,得到第三系统,包括:确定预配置的消息队列以及消息队列的类型,所述预配置的消息队列包括目标消息队列和目标延迟消息队列,所述消息队列类型至少包括以下之一:Kafka、RabbitMQ、Apache Pulsar;根据所述消息队列的类型获取所述目标消息队列和所述目标延迟消息队列的配置参数;根据获取的配置参数在所述第二系统上配置所述目标消息队列和所述目标延迟消息队列,得到第三系统,所述目标消息队列用于对任务进行异步处理,所述目标延迟消息队列用于缓存所述目标消息队列缓存失败的消息,并作为延迟消息,并在延迟到期时将所述延迟消息发送至所述目标消息队列。
可选的,在本发明第一方面的第六种实现方式中,所述在所述第三系统上建立分发型网关服务,得到IDAAS权限管理系统,包括:在所述第三系统上部署多个服务器,并在不同的服务器上部署多个相同的网关服务实例;引入负载均衡器作为前端,所述负载均衡器根据预设的分发策略将请求平均地分发到各个所述网关服务实例上;在所述负载均衡器上配置监控和日志记录功能,得到IDAAS权限管理系统。
本发明第二方面提供了一种权限管理系统构建装置,包括:基础架构模块,用于搭建基于IDAAS的系统基础架构,所述系统基础架构包括身份验证模块、访问控制模块以及用户角色和权限管理模块;嵌入模块,用于将用于权限管理更新的更新机制嵌入所述系统基础架构,得到第一系统;第一配置模块,用于在所述第一系统上配置主从复制模式的Redis缓存数据库,得到第二系统;第二配置模块,用于在所述第二系统上配置用于对任务进行异步处理的消息队列,得到第三系统;构建模块,在所述第三系统上建立分发型网关服务,得到IDAAS权限管理系统。
可选的,在本发明第二方面的第一种实现方式中,所述基础架构模块包括:第一构建单元,用于构建基于SAML单点登录和哈希算法加密的身份验证模块;第二构建单元,用于构建使用角色的访问控制模型的访问控制模块;第三构建单元,用于构建基于分层授权的用户角色和权限管理模块;搭建单元,用于根据身份验证模块、访问控制模块以及用户角色和权限管理模块搭建基于IDAAS的系统基础架构。
可选的,在本发明第二方面的第二种实现方式中,所述嵌入模块包括:第一确定单元,用于确定系统更新频率和用于存储权限管理更新数据的数据源;设置单元,用于设置用于触发从数据源中获取权限管理更新数据的定时任务,并根据更新频率和定时任务形成用于权限管理更新的更新机制;嵌入单元,用于将更新机制嵌入系统基础架构,得到第一系统。
可选的,在本发明第二方面的第三种实现方式中,所述第一配置模块包括:第一配置单元,用于在第一系统上配置Redis主服务器,将其中一个实例配置为主节点;第二配置单元,用于在第一系统上配置Redis从服务器,将剩余的实例配置为从节点,并将从节点连接到主节点;验证单元,用于验证Redis主服务器和Redis从服务器的主从复制状态,得到第二系统。
可选的,在本发明第二方面的第四种实现方式中,所述第二配置模块包括:第二确定单元,用于确定预配置的消息队列以及消息队列的类型,预配置的消息队列包括目标消息队列和目标延迟消息队列,消息队列类型至少包括以下之一:Kafka、RabbitMQ、ApachePulsar;第三配置单元,用于根据消息队列的类型获取目标消息队列和目标延迟消息队列的配置参数;第四配置单元,用于根据获取的配置参数在第二系统上配置目标消息队列和目标延迟消息队列,得到第三系统。
可选的,在本发明第二方面的第五种实现方式中,所述构建模块包括:部署单元,用于在第三系统上部署多个服务器,并在不同的服务器上部署多个相同的网关服务实例;引入单元,用于引入负载均衡器作为前端,负载均衡器根据预设的分发策略将请求平均地分发到各个网关服务实例上;第五配置单元,用于在负载均衡器上配置监控和日志记录功能,得到IDAAS权限管理系统。
本发明第三方面提供了一种权限管理系统构建设备,包括:存储器和至少一个处理器,所述存储器中存储有计算机可读指令,所述存储器和所述至少一个处理器通过线路互连;所述至少一个处理器调用所述存储器中的所述计算机可读指令,以使得所述权限管理系统构建设备执行如上所述权限管理系统构建方法的各个步骤。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可读指令,当其在计算机上运行时,使得计算机执行如上所述权限管理系统构建方法的各个步骤。
本发明提供的技术方案中,通过结合身份验证模块、访问控制模块以及用户角色和权限管理模块,构建一体化系统架构,并通过配置主从复制模式的Redis缓存数据库进行数据备份和故障切换,通过配置消息队列对任务进行异步处理,以及通过建立分发型网关服务,使得系统能够支持高并发,每秒事务请求处理数能够达到10000次,在业务高峰期,能够保障系统的正常运行,支持在大量用户同时访问企业内部系统。
附图说明
图1为本发明实施例提供的权限管理系统构建方法的第一种流程图;
图2为本发明实施例提供的权限管理系统构建方法的第二种流程图;
图3为本发明实施例提供的权限管理系统构建方法的第三种流程图;
图4为本发明实施例提供的权限管理系统构建方法的第四种流程图;
图5为本发明实施例提供的权限管理系统构建方法的第五种流程图;
图6为本发明实施例提供的权限管理系统构建方法的第六种流程图;
图7为本发明实施例提供的权限管理系统构建装置的结构示意图;
图8为本发明实施例提供的权限管理系统构建设备的结构示意图。
具体实施方式
本发明实施例提供了权限管理系统构建方法、装置、设备及存储介质,该方法用于构建基于IDAAS的权限管理系统,该系统支持高并发,每秒事务请求处理数能够达到10000次。该方法包括:搭建基于IDAAS的系统基础架构,系统基础架构包括身份验证模块、访问控制模块以及用户角色和权限管理模块;将用于权限管理更新的更新机制嵌入系统基础架构,得到第一系统;在第一系统上配置主从复制模式的Redis缓存数据库,得到第二系统;在第二系统上配置用于对任务进行异步处理的消息队列,得到第三系统;在第三系统上建立分发型网关服务,得到IDAAS权限管理系统。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中一种权限管理系统构建方法的第一个实施例包括:
S101、搭建基于IDAAS的系统基础架构,系统基础架构包括身份验证模块、访问控制模块以及用户角色和权限管理模块。
可以理解地,本发明的执行主体可以为权限管理系统构建装置,还可以是终端或者服务器,具体此处不做限定。本发明实施例以服务器为执行主体为例进行说明。
在本实施例中,基于IDAAS的权限管理系统的系统基础架构一般包括身份验证模块、访问控制模块以及用户角色和权限管理模块。
设计身份验证模块一般包括确定身份验证的方式,如基于用户名密码、单点登录(SSO)、OAuth等。身份验证模块用于实现用户注册、登录和注销功能,并确保安全性,比如使用加密算法存储密码、防止暴力破解等。
设计访问控制模块需要确定权限验证的策略,如基于角色的访问控制(RBAC)、基于资源的访问控制(ABAC)等。还需要根据系统需求,定义不同的用户角色和权限,并将其映射到相应的访问权限。
用户角色和权限管理模块用于提供创建、编辑、删除用户角色的功能,并为每个角色分配相应的权限。用户角色和权限管理模块支持细粒度的权限控制,例如字段级别的权限控制或动态权限控制。
在本实施例中,基于预设的规则和策略对权限管理进行配置。预设的规则和策略根据系统需求和业务场景确定,一般包括角色与权限的映射关系、资源的访问控制规则等内容。
S102、将用于权限管理更新的更新机制嵌入系统基础架构,得到第一系统。
在本实施例中,当业务发生变化时,需要及时更新和调整权限管理规则和策略。因此,需要在系统基础架构上嵌入用于权限管理更新的更新机制。在新增业务功能时需要分析对应的权限需求,然后进行相应的权限管理更新。
S103、在第一系统上配置主从复制模式的Redis缓存数据库,得到第二系统。
在本实施例中,使用主从复制模式的Redis缓存数据库使得系统具有高可用性的优点,可以将主服务器上的数据实时地复制到一个或多个从服务器上。这样即使主服务器发生故障或数据丢失,从服务器上的数据仍然完整存在,实现了数据的冗余备份。当主服务器发生故障或不可用时,从服务器可以立即接管服务,成为新的主服务器。这种自动故障切换机制确保了系统的持续可用性,减少了停机时间和业务中断的风险。
S104、在第二系统上配置用于对任务进行异步处理的消息队列,得到第三系统。
在本实施例中,通过配置消息队列对第二系统进行架构优化,常见的消息队列有Kafka、RabbitMQ、Apache Pulsar等。
使用消息队列可以将任务解耦和处理,即使某个处理节点出现故障或负载过高,其他节点仍然可以继续处理队列中的任务,这种解耦和冗余设计提高了系统的稳定性和可靠性。而且,通过将任务放入消息队列中,可以立即返回响应给用户,而不需要等待任务的实际执行完成。这样可以提高系统的响应速度,使用户能够更快地获得结果。
S105、在第三系统上建立分发型网关服务,得到IDAAS权限管理系统。
在本实施例中,常用的网关工具有Nginx、Kong、Spring Cloud Gateway等。通过网关服务实现负载均衡可以均匀地将请求分发给后端服务,提高系统性能和可靠性。根据负载情况,可以选择不同的负载均衡算法,如轮询、随机等。
如果需要对请求进行安全认证和访问控制,可以在网关中配置身份验证和授权机制,确保只有授权的请求才能访问后端服务。
此外还可以配置监控指标、报警规则和日志记录监控网关服务的性能和运行状态,从而能够及时发现问题并进行故障排查。
本实施例提供的是一种权限管理系统构建方法,其通过结合身份验证模块、访问控制模块以及用户角色和权限管理模块,构建一体化系统架构,并通过配置主从复制模式的Redis缓存数据库进行数据备份和故障切换,通过配置消息队列对任务进行异步处理,以及通过建立分发型网关服务,使得系统能够支持高并发,每秒事务请求处理数能够达到10000次,在业务高峰期,能够保障系统的正常运行,支持在大量用户同时访问企业内部系统。
请参阅图2,本发明实施例中权限管理系统构建方法的第二个实施例包括:
S201、构建基于SAML单点登录和哈希算法加密的身份验证模块。
在本实施例中,构建基于SAML单点登录和哈希算法加密的身份验证模块通过以下方式实现:首先,配置SAML单点登录:选择一个支持SAML的身份提供者(IdP),如PingFederate、Okta等。接着,配置和集成IdP,确保它可以生成和传递SAML断言。最后,配置需要接受SAML断言的应用程序作为服务提供者(SP),并与IdP建立信任关系。
当用户注册时,将其凭证信息(例如用户名和密码)存储在数据库中。将用户的密码通过哈希算法进行加密处理,并存储加密后的哈希值。
用户登录验证过程如下:用户访问需要身份验证的应用程序。应用程序检测到用户未登录,将其重定向到IdP进行认证。用户在IdP上输入凭证信息(如用户名和密码)。IdP验证用户凭证的正确性。如果验证成功,IdP生成SAML断言并将其返回给应用程序。
应用程序端验证过程如下:应用程序接收到SAML断言后,解析并验证其完整性和真实性,确保它来自可信的IdP。提取SAML断言中的用户标识信息,如用户名。在应用程序中查找该用户的哈希密码。将用户输入的密码通过相同的哈希算法进行加密处理,并与数据库中存储的哈希密码进行比较。如果哈希密码匹配,则身份验证成功,用户被授权访问资源。
S202、构建使用角色的访问控制模型的访问控制模块。
在本实施例中,访问控制模型可以使用RBAC(Role-Based Access Control)。RBAC模型基于角色来管理用户的访问权限。每个用户被分配一个或多个角色,而角色则被授予访问特定资源的权限。
构建RBAC访问控制模块时,首先需要定义角色和资源。然后,将用户与角色关联,并为每个角色分配适当的权限。在用户尝试访问资源时,访问控制模块会根据用户所属的角色和资源的访问权限进行决策。
在其他实施例中,可以构建基于属性基准的访问控制模型的访问控制模块,访问控制模型可以使用ABAC(Attribute-Based Access Control)模型。ABAC模型基于属性来管理用户的访问权限。每个用户和资源都有各自的属性,例如用户的部门、职位级别,以及资源的敏感级别、地理位置等。
构建ABAC访问控制模块时,需要定义用户、资源和属性,并确定属性之间的关系。还需定义策略来描述哪些组合属性允许用户访问资源。在用户尝试访问资源时,访问控制模块会根据用户的属性、资源的属性以及定义的策略进行决策。
S203、构建基于分层授权的用户角色和权限管理模块。
在本实施例中,构建基于分层授权的用户角色和权限管理模块具体包括以下方式:
确定角色层级结构,例如超级管理员、管理员、普通用户等,并确定它们之间的关联性和继承关系,确保每个角色都具有适当的权限和访问级别。
将系统中的资源和操作分类为不同的权限级别,例如,创建、读取、更新和删除(CRUD)操作等。
基于角色基准的访问控制(RBAC)模型,在系统中创建不同的角色,可以使用角色编码或角色名称来标识角色,并根据角色的层级和权限级别的类别,对不同资源和操作设置相应的访问权限,确保角色的定义符合业务需求。
可选地,为每个权限分配唯一的标识符,以便于区分。
在本实施例中,可以通过以下方法对权限管理进行配置:根据预设的规则和策略,在IDAAS平台上配置规则引擎,将配置好的规则引擎绑定到相应的权限对象上。
在本实施例中,在IDAAS平台上配置规则引擎包括:在IDAAS平台的管理控制台中根据预设的规则和策略,创建规则集;在规则集中添加具体的规则;为每个规则配置条件部分和操作部分,得到规则引擎。
规则集是一组相关的规则的集合,用于定义访问控制逻辑。条件可以基于用户属性、角色、时间、位置等多个因素进行配置。操作可以包括授权、拒绝、要求额外验证等。
将配置好的规则引擎绑定到相应的权限上包括:在IDAAS平台的管理控制台中选择要绑定规则引擎的权限对象;对选择的权限对象进行编辑,以添加或绑定规则引擎;选择规则引擎,并将其绑定到所选的权限对象上。
需要更新权限管理时,根据实时更新的权限管理规则和策略更新权限管理规则引擎,并将更新后的权限管理规则引擎绑定到待更新的权限对象上。
S204、根据身份验证模块、访问控制模块以及用户角色和权限管理模块搭建基于IDAAS的系统基础架构。
本实施例中,基于SAML单点登录和哈希算法加密的身份验证模块、基于角色基准的访问控制模块以及基于分层授权的用户角色和权限管理模块构建的系统具有强大的安全性、高度的灵活性和可扩展性,用户可以通过单一身份验证机制访问多个应用程序,能够提高用户体验和效率。
请参阅图3,本发明实施例中的一种权限管理系统构建方法的第三个实施例包括:
S301、确定系统更新频率和用于存储权限管理更新数据的数据源。
在本实施例中,系统更新频率应根据业务需求和数据变化情况来确定。如果权限管理数据需要实时更新,可以采用较高的更新频率,确保及时同步最新的权限信息。但如果权限数据的变化比较少或者对实时性要求不高,则可以适度调整更新频率以减少系统负载和资源消耗。
常见的数据源包括数据库、文件系统或缓存等。
S302、设置用于触发从数据源中获取权限管理更新数据的定时任务,并根据更新频率和定时任务形成用于权限管理更新的更新机制。
S303、将更新机制嵌入系统基础架构,得到第一系统。
在本实施例,系统根据更新机制更新权限管理,即当规则引擎中的规则和策略发生变化时,权限也会相应地进行调整,确保权限与规则的匹配性,能够实现更精确和灵活的访问控制和权限管理。
此外,还可以在定时任务中加入错误处理机制,确保任务的健壮性和可靠性。
本实施例中,将用于权限管理更新的更新机制嵌入系统基础架构可以实现权限数据的实时性、可扩展性和灵活性,提高系统的安全性和效率,而且更新机制通过定时任务自动触发数据获取过程,无需人工干预,节省了人力资源和时间成本,系统可以自主获取、处理和更新权限管理数据,提高了系统的智能化。
请参阅图4,本发明实施例中的一种权限管理系统构建方法的第四个实施例包括:
S401、在第一系统上配置Redis主服务器,将其中一个实例配置为主节点。
S402、在第一系统上配置Redis从服务器,将剩余的实例配置为从节点,并将从节点连接到主节点。
可以理解地,Redis从服务器的数量可以根据需求设置,若在使用过程中,需要增加Redis从服务器,则可以在原有基础上增加Redis从服务器,为每个Redis从服务器配置不同的端口号并连接到Redis主服务器。
S403、验证Redis主服务器和Redis从服务器的主从复制状态,得到第二系统。
在本实施例中,主从复制模式的Redis缓存数据库用于数据备份和故障切换,Redis主服务器用于数据写入和读取,Redis从服务器用于备份数据和故障切换。在主从复制模式下,主服务器将复制写入的数据到从服务器,以提供冗余备份和高可用性。
请参阅图5,本发明实施例中的一种权限管理系统构建方法的第五个实施例包括:
S501、确定预配置的消息队列以及消息队列的类型,预配置的消息队列包括目标消息队列和目标延迟消息队列,消息队列类型至少包括以下之一:Kafka、RabbitMQ、ApachePulsar。
可以理解地,Kafka是一个高吞吐量、分布式的发布-订阅消息队列系统。它适用于处理大规模数据流,具备高可用性和持久性,支持消息的持久化和批量处理。Kafka提供了强大的消息传递、分发和存储功能。
RabbitMQ是一个开源的AMQP(高级消息队列协议)消息队列系统。它提供灵活的消息路由机制和可靠的消息传递保证。RabbitMQ支持多种消息模式,如点对点、发布-订阅、RPC等,适用于各种异步通信需求。
Apache Pulsar是一个分布式的、持久化的消息和流处理平台。它具有可扩展性、容错性和灵活的消息传递语义。Apache Pulsar提供了分层存储和多租户支持。
在本实施例中,消息队列的类型为Kafka。
S502、根据消息队列的类型获取目标消息队列和目标延迟消息队列的配置参数。
S503、根据获取的配置参数在第二系统上配置目标消息队列和目标延迟消息队列,得到第三系统,目标消息队列用于对任务进行异步处理,目标延迟消息队列用于缓存目标消息队列缓存失败的消息,并作为延迟消息,并在延迟到期时将延迟消息发送至目标消息队列。
在本实施例中,对于类型为Kafka的消息队列,目标消息队列配置参数包括主题(Topic)、分区(Partition)、副本因子(Replication Factor)和持久化设置(PersistenceSettings)。
主题为消息发送和接收的基本单位。分区参数用于确定每个主题可以被分为多个分区,用于水平扩展和并行处理。副本因子参数用于控制主题副本的数量,用于数据冗余和容错性。持久化设置参数用于确定是否对消息进行持久化存储以及数据保留期限等。
目标延迟消息队列配置参数包括:延迟时间、重试机制、目标消息队列连接和路由。
延迟时间指的是消息在发送到目标消息队列之前需要等待的时间。通常以毫秒或秒为单位设置延迟时间。
重试机制指的是确定在延迟消息到期后生成重发消息的重试策略和机制。可以设置重试次数、重试间隔、退避策略等。
本实施例提供的是一种权限管理系统构建方法,其配置有消息队列,通过将任务提交到消息队列后立即返回,可以减少请求处理的等待时间,从而提高系统的响应性能和吞吐量。任务可以在后台异步进行处理,有效利用系统资源。而且,通过使用目标消息队列和目标延迟消息队列,目标延迟消息队列作为缓冲区,可以缓存目标消息队列发送失败的消息,并在延迟到期时重新发送。这增加了系统的容错性,即使在目标消息队列不可用或出现故障时,消息也不会丢失。
请参阅图6,本发明实施例中的一种权限管理系统构建方法的第六个实施例包括:
S601、在第三系统上部署多个服务器,并在不同的服务器上部署多个相同的网关服务实例。
在本实施例中,在服务器上部署网关服务实例包括端口设置、路由配置、访问权限控制等。为了便于区分和管理每个实例设置唯一的标识符。
在本实施例中,通过部署多个服务器和相同的网关服务实例,可以支持系统的水平扩展。当系统的负载增加时,可以添加更多的服务器和网关服务实例来应对,同时负载均衡器会自动根据预设的分发策略将请求平均地分发给这些实例,从而平衡流量,提高系统的性能和吞吐量。
S602、引入负载均衡器作为前端,负载均衡器根据预设的分发策略将请求平均地分发到各个网关服务实例上。
在本实施例中,可以使用轮询、权重、最少连接数等算法将请求平均地分发到各个网关服务实例上。
在本实施例中,通过在不同的服务器上部署多个相同的网关服务实例,并通过负载均衡器将请求平均地分发到这些实例上,可以提高系统的可用性。如果某个服务器或网关服务实例出现故障,负载均衡器会将请求自动转发到其他正常工作的实例上,确保用户的访问不中断。
S603、在负载均衡器上配置监控和日志记录功能,得到IDAAS权限管理系统。
具体地,在负载均衡器上配置监控功能包括:定义监控指标:确定要监控的指标,包括服务器负载、连接数、吞吐量、延迟等;配置监控代理或插件,在负载均衡器中配置监控代理或插件,使其能够收集和传输监控指标数据;根据监控指标的阈值,设置相应的报警规则,例如,当服务器负载超过一定阈值时发送警报通知。这样可以及时发现并解决潜在的性能问题。
在负载均衡器上配置日志记录功能,包括:在负载均衡器上配置访问日志记录和错误日志记录,访问日志包括请求来源IP、处理时间、请求路径;错误日志包括请求超时、连接失败;根据预设格式设置日志格式,可以包含请求时间、客户端IP地址、目标服务器IP地址、响应状态码等信息;配置日志输出路径。
本实施例提供的是一种权限管理系统构建方法,其通过建立分发型网关服务、使用负载均衡器以及配置监控和日志记录功能,可以实现高可用性、可扩展性,并具备监控和日志记录能力,从而提供稳定、可靠和安全的权限管理服务。
上面对本发明实施例中权限管理系统构建方法进行了描述,下面对本发明实施例中装置进行描述,请参阅图7,本发明实施例中权限管理系统构建装置的实施方式包括:
基础架构模块701,用于搭建基于IDAAS的系统基础架构,系统基础架构包括身份验证模块、访问控制模块以及用户角色和权限管理模块;
嵌入模块702,用于将用于权限管理更新的更新机制嵌入系统基础架构,得到第一系统;
第一配置模块703,用于在第一系统上配置主从复制模式的Redis缓存数据库,得到第二系统;
第二配置模块704,用于在第二系统上配置用于对任务进行异步处理的消息队列,得到第三系统;
构建模块705,用于在第三系统上建立分发型网关服务,得到IDAAS权限管理系统。
在本实施例中,基础架构模块701包括:第一构建单元7011,用于构建基于SAML单点登录和哈希算法加密的身份验证模块;第二构建单元7012,用于构建使用角色的访问控制模型的访问控制模块;第三构建单元7013,用于构建基于分层授权的用户角色和权限管理模块;搭建单元7014,用于根据身份验证模块、访问控制模块以及用户角色和权限管理模块搭建基于IDAAS的系统基础架构。
在本实施例中,嵌入模块702包括:第一确定单元7021,用于确定系统更新频率和用于存储权限管理更新数据的数据源;设置单元7022,用于设置用于触发从数据源中获取权限管理更新数据的定时任务,并根据更新频率和定时任务形成用于权限管理更新的更新机制;嵌入单元7023,用于将更新机制嵌入系统基础架构,得到第一系统。
在本实施例中,第一配置模块703包括:第一配置单元7031,用于在第一系统上配置Redis主服务器,将其中一个实例配置为主节点;第二配置单元7031,用于在第一系统上配置Redis从服务器,将剩余的实例配置为从节点,并将从节点连接到主节点;验证单元7033,用于验证Redis主服务器和Redis从服务器的主从复制状态,得到第二系统。
在本实施例中,第二配置模块704包括:第二确定单元7041,用于确定预配置的消息队列以及消息队列的类型,预配置的消息队列包括目标消息队列和目标延迟消息队列,消息队列类型至少包括以下之一:Kafka、RabbitMQ、Apache Pulsar;第三配置单元7042,用于根据消息队列的类型获取目标消息队列和目标延迟消息队列的配置参数;第四配置单元7043,用于根据获取的配置参数在第二系统上配置目标消息队列和目标延迟消息队列,得到第三系统。
在本实施例中,构建模块705包括:部署单元7051,用于在第三系统上部署多个服务器,并在不同的服务器上部署多个相同的网关服务实例;引入单元7052,用于引入负载均衡器作为前端,负载均衡器根据预设的分发策略将请求平均地分发到各个网关服务实例上;第五配置单元7053,用于在负载均衡器上配置监控和日志记录功能,得到IDAAS权限管理系统。
本实施例中,通过结合身份验证模块、访问控制模块以及用户角色和权限管理模块,构建一体化系统架构,并通过配置主从复制模式的Redis缓存数据库进行数据备份和故障切换,通过配置消息队列对任务进行异步处理,以及通过建立分发型网关服务,使得系统能够支持高并发,每秒事务请求处理数能够达到10000次,在业务高峰期,能够保障系统的正常运行,支持在大量用户同时访问企业内部系统。
上面图7从模块化功能实体的角度对本发明实施例中的权限管理系统构建装置进行详细描述,下面从硬件处理的角度对本发明实施例中权限管理系统构建设备进行详细描述。
图8是本发明实施例提供的一种权限管理系统构建设备的结构示意图,该设备800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessing units,CPU)810(例如,一个或一个以上处理器)和存储器820,一个或一个以上存储应用程序833或数据832的存储介质830(例如一个或一个以上海量存储设备)。其中,存储器820和存储介质830可以是短暂存储或持久存储。存储在存储介质830的程序可以包括一个或一个以上模块(图未示),每个模块可以包括对设备800中的一系列指令操作。更进一步地,处理器810可以设置为与存储介质830通信,在设备800上执行存储介质中的一系列指令操作。
设备800还可以包括一个或一个以上电源840,一个或一个以上有线或无线网络接口850,一个或一个以上输入输出接口860,和/或,一个或一个以上操作系统831,例如Windows Serve,Mac OS X,Unix,Linux,FreeBSD等等。
本发明实施例还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,计算机可读存储介质中存储有指令,当指令在计算机上运行时,使得计算机执行权限管理系统构建方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统或装置、单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种权限管理系统构建方法,其特征在于,所述权限管理系统构建方法包括:
搭建基于IDAAS的系统基础架构,所述系统基础架构包括身份验证模块、访问控制模块以及用户角色和权限管理模块;
将用于权限管理更新的更新机制嵌入所述系统基础架构,得到第一系统;
在所述第一系统上配置主从复制模式的Redis缓存数据库,得到第二系统;
在所述第二系统上配置用于对任务进行异步处理的消息队列,得到第三系统;
在所述第三系统上建立分发型网关服务,得到IDAAS权限管理系统。
2.根据权利要求1所述的权限管理系统构建方法,其特征在于,所述搭建基于IDAAS的系统基础架构,所述系统基础架构包括身份验证模块、访问控制模块以及用户角色和权限管理模块,包括:
构建基于SAML单点登录和哈希算法加密的身份验证模块;
构建基于角色基准的访问控制模型的访问控制模块;
构建基于分层授权的用户角色和权限管理模块;
根据所述身份验证模块、所述访问控制模块以及所述用户角色和权限管理模块搭建基于IDAAS的系统基础架构。
3.根据权利要求2所述的权限管理系统构建方法,其特征在于,所述构建基于分层授权的用户角色和权限管理模块,包括:
确定角色层级结构;
将系统中的资源和操作分类为不同的权限级别;
基于角色基准的访问控制模型创建不同的角色,并根据角色的层级和权限级别的类别,对不同资源和操作设置相应的访问权限。
4.根据权利要求1所述的权限管理系统构建方法,其特征在于,所述将用于权限管理更新的更新机制嵌入所述系统基础架构,得到第一系统,包括:
确定系统更新频率和用于存储权限管理更新数据的数据源;
设置用于触发从所述数据源中获取权限管理更新数据的定时任务,并根据所述更新频率和所述定时任务形成用于权限管理更新的更新机制;
将所述更新机制嵌入系统基础架构,得到第一系统。
5.根据权利要求1所述的权限管理系统构建方法,其特征在于,所述在所述第一系统上配置主从复制模式的Redis缓存数据库,得到第二系统,包括:
在所述第一系统上配置Redis主服务器,将其中一个实例配置为主节点;
在所述第一系统上配置Redis从服务器,将剩余的实例配置为从节点,并将所述从节点连接到所述主节点;
验证所述Redis主服务器和所述Redis从服务器的主从复制状态,得到第二系统。
6.根据权利要求1所述的权限管理系统构建方法,其特征在于,所述在所述第二系统上配置用于对任务进行异步处理的消息队列,得到第三系统,包括:
确定预配置的消息队列以及消息队列的类型,所述预配置的消息队列包括目标消息队列和目标延迟消息队列,所述消息队列类型至少包括以下之一:Kafka、RabbitMQ、ApachePulsar;
根据所述消息队列的类型获取所述目标消息队列和所述目标延迟消息队列的配置参数;
根据获取的配置参数在所述第二系统上配置所述目标消息队列和所述目标延迟消息队列,得到第三系统,所述目标消息队列用于对任务进行异步处理,所述目标延迟消息队列用于缓存所述目标消息队列缓存失败的消息,并作为延迟消息,并在延迟到期时将所述延迟消息发送至所述目标消息队列。
7.根据权利要求1所述的权限管理系统构建方法,其特征在于,所述在所述第三系统上建立分发型网关服务,得到IDAAS权限管理系统,包括:
在所述第三系统上部署多个服务器,并在不同的服务器上部署多个相同的网关服务实例;
引入负载均衡器作为前端,所述负载均衡器根据预设的分发策略将请求平均地分发到各个所述网关服务实例上;
在所述负载均衡器上配置监控和日志记录功能,得到IDAAS权限管理系统。
8.一种权限管理系统构建装置,其特征在于,包括:
基础架构模块,用于搭建基于IDAAS的系统基础架构,所述系统基础架构包括身份验证模块、访问控制模块以及用户角色和权限管理模块;
嵌入模块,用于将用于权限管理更新的更新机制嵌入所述系统基础架构,得到第一系统;
第一配置模块,用于在所述第一系统上配置主从复制模式的Redis缓存数据库,得到第二系统;
第二配置模块,用于在所述第二系统上配置用于对任务进行异步处理的消息队列,得到第三系统;
构建模块,在所述第三系统上建立分发型网关服务,得到IDAAS权限管理系统。
9.一种权限管理系统构建设备,其特征在于,包括存储器和至少一个处理器,所述存储器中存储有计算机可读指令;
所述至少一个处理器调用所述存储器中的所述计算机可读指令,以执行如权利要求1-7中任一项所述权限管理系统构建方法的各个步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机可读指令,其特征在于,所述计算机可读指令被处理器执行时实现如权利要求1-7中任一项所述权限管理系统构建方法的各个步骤。
CN202310850059.9A 2023-07-11 2023-07-11 权限管理系统构建方法、装置、设备及存储介质 Pending CN117131493A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310850059.9A CN117131493A (zh) 2023-07-11 2023-07-11 权限管理系统构建方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310850059.9A CN117131493A (zh) 2023-07-11 2023-07-11 权限管理系统构建方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN117131493A true CN117131493A (zh) 2023-11-28

Family

ID=88855501

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310850059.9A Pending CN117131493A (zh) 2023-07-11 2023-07-11 权限管理系统构建方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN117131493A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117687867A (zh) * 2023-11-30 2024-03-12 广州三叠纪元智能科技有限公司 一种Elasticsearch日志记录方法、电子设备和存储介质和产品

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117687867A (zh) * 2023-11-30 2024-03-12 广州三叠纪元智能科技有限公司 一种Elasticsearch日志记录方法、电子设备和存储介质和产品

Similar Documents

Publication Publication Date Title
CN114787781B (zh) 用于启用高可用性受管理故障转移服务的系统和方法
US11088903B2 (en) Hybrid cloud network configuration management
US10218782B2 (en) Routing of communications to one or more processors performing one or more services according to a load balancing function
CN113169952B (zh) 一种基于区块链技术的容器云管理系统
CN107395767B (zh) 基于长连接的消息推送系统及方法
US10003458B2 (en) User key management for the secure shell (SSH)
US20050015471A1 (en) Secure cluster configuration data set transfer protocol
US20190243950A1 (en) Allowing remote attestation of trusted execution environment enclaves via proxy
US9166893B2 (en) Methods, apparatus and systems for monitoring locations of data within a network service
US20050027862A1 (en) System and methods of cooperatively load-balancing clustered servers
US9021264B2 (en) Method and system for cloud based storage
CN107925877B (zh) 用于集中式配置和认证的系统和方法
JP4549408B2 (ja) ファイルサーバのクラスタノード制御プログラム,クラスタノード制御方法及びクラスタノード制御装置
US11366728B2 (en) Systems and methods for enabling a highly available managed failover service
US7451209B1 (en) Improving reliability and availability of a load balanced server
US11341005B2 (en) Systems and methods for enabling a highly available managed failover service
US11658812B1 (en) Distributed key management system
Soriente et al. Replicatee: Enabling seamless replication of sgx enclaves in the cloud
CN117131493A (zh) 权限管理系统构建方法、装置、设备及存储介质
US11356448B1 (en) Device and method for tracking unique device and user network access across multiple security appliances
Eischer et al. Resilient cloud-based replication with low latency
WO2003091895A2 (en) System for managing and delivering digital services through computer networks
CN108600156B (zh) 一种服务器及安全认证方法
CN108366087B (zh) 一种基于分布式文件系统的iscsi服务实现方法和装置
CN110347718A (zh) 一种redis分片方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication