CN111556023A - 一种基于权限的内容可配置方法 - Google Patents
一种基于权限的内容可配置方法 Download PDFInfo
- Publication number
- CN111556023A CN111556023A CN202010242388.1A CN202010242388A CN111556023A CN 111556023 A CN111556023 A CN 111556023A CN 202010242388 A CN202010242388 A CN 202010242388A CN 111556023 A CN111556023 A CN 111556023A
- Authority
- CN
- China
- Prior art keywords
- api gateway
- service
- content
- information
- configurable
- 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
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000012795 verification Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
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/08—Network architectures or network communication protocols for network security for authentication of entities
-
- 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
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Bioethics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了一种基于权限的内容可配置方法,包括如下步骤:1)各个服务平台接收用户登录信息后,通过API网关进行身份验证,API网关将用户信息转发到对应的可配置内容微服务组件;2)对应的可配置内容微服务组件接收API网关信息,对信息进行判断后把对应的数据返回给API网关,API网关再通过TOKEN插件把数据返回给用户端。本发明方法采用API网关kong和可配置内容微服务,将权限控制、页面菜单配置和网关插件综合起来进行运用,实现多平台多页面的内容可配置。实现了多平台的页面、菜单等信息统一管理,方便管理员操作,统一查看。
Description
技术领域
本发明属于云平台技术领域,尤其是涉及一种基于权限的内容可配置方法。
背景技术
随着企业的不断发展,用户的数量越来越多。一些企业为了更人性化的产品展示,根据不同的节日或需求,需要对网站的菜单和页面进行频繁变更,给前端人员无形中增加了很多的工作量。还有一些企业有这种需求,需要给不同群体的用户提供不同的平台,平台提供的服务大致相同,但用户可看到的菜单和进行的操作范围不一样,人工维护多个服务版本增加了很多人工成本,且容易出错,服务变更时,给用户的体验也不太友好。
目前阿里云的用户控制台已经实现可拖拉上下顺序、增删的功能,可以根据用户的需求,选择不同的页面布局,给用户更加友好的体验。同时阿里云、腾讯云等实现了权限控制。RAM(Resource Access Management)是为客户提供的用户身份管理与资源访问控制服务。这种方式允许在一个云账户下创建并管理多个用户、用户组和角色,并允许给用户、组或角色分配不同的权限,从而实现不同用户拥有不同权限,限制进行不同的操作。
阿里等云厂商,目前实现的是登录进去后,根据用户的需求进行不同样式的页面展示。提供的是单一平台上用户端的个性化展示。
没有一个后台可以对多个不同的服务平台一键化傻瓜配置管理,且所有菜单对所有用户都是可见的,不能根据用户的不同权限,展示不同的菜单和页面。
发明内容
有鉴于此,本发明旨在提出一种基于权限的内容可配置方法,以实现多平台多页面的内容可配置。
本发明的核心思想是:通过kong、redis、mysql、可配置内容微服务、用户权限控制微服务实现多平台多页面的内容可配置,构建出完全自治和傻瓜式的菜单、页面管理系统。
为达到上述目的,本发明的技术方案是这样实现的:
一种基于权限的内容可配置方法,包括如下步骤:
1)各个服务平台接收用户登录信息后,通过API网关进行身份验证,API网关将用户信息转发到对应的可配置内容微服务组件;
2)对应的可配置内容微服务组件接收API网关信息,对信息进行判断后把对应的数据返回给API网关,API网关再通过TOKEN插件把数据返回给用户端;其中,
当后台对某一服务平台的内容进行修改后,API网关会根据内容配置管理台传过来的平台域名信息、JWT的key和秘钥进行解析,通过JWT插件验证后,API网关会将相关调用转发到对应的可配置内容微服务组件上进行认证。
进一步的,调用可配置内容微服务查看菜单/页面的方法,包括如下内容:第一次调用可配置内容微服务时,可配置内容微服务会调用数据库获取到具体的菜单和页面,同时将菜单和页面信息存入缓存;后续再次调用时,可配置内容微服务会从缓存中获取对应的信息;
且当后台进行菜单/页面更新后,若缓存中存在菜单和页面数据,可配置内容微服务更新数据库的同时,会同时更新缓存中的信息;对可配置内容微服务信息更新时,会同时记录日志到数据库。
进一步的,各个服务平台的服务的启用/禁用方法,包含如下内容:
若启用或禁用平台服务,对应的可配置内容微服务会将请求发给对应服务平台的API网关,API网关通过JWT验证后,修改API网关中的request-termination插件的enable状态;该平台用户在禁用状态访问页面进行服务请求时,API网关会给出友好提示。
相对于现有技术,本发明具有以下优势:
(1)本发明方法采用API网关kong和可配置内容微服务,将权限控制、页面菜单配置和网关插件综合起来进行运用,实现多平台多页面的内容可配置。实现了多平台的页面、菜单等信息统一管理,方便管理员操作,统一查看。页面菜单可配置,减少了前端的工作量,可以按照用户的需求不同的配置用户控制台菜单,提高了用户体验。
(2)本发明采用微服务部署,松耦合,实现新增模块或更新版本时,不影响其他模块。
(3)本发明方法所有菜单从缓存中读取,提高的页面响应速度。
(4)本发明方法实现内容配置管理员的所有操作可追踪,若有菜单、页面配置问题,方便定位责任。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例所述的方法实现的系统的整体架构图;
图2为本发明实施例所述服务的启用/禁用功能的调用关系图。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面将参考附图并结合实施例来详细说明本发明。
本发明一种基于权限的内容可配置方法,包括如下步骤:
各个服务平台接收用户登录信息后,通过API网关(Kong)进行身份验证,API网关将用户信息转发到对应的可配置内容微服务组件;
对应的可配置内容微服务组件接收API网关信息,对信息进行判断后把对应的数据返回给API网关,API网关再通过TOKEN插件把数据返回给用户端;其中,
当后台对某一服务平台的内容进行修改后,API网关会根据内容配置管理台传过来的平台域名信息、JWT的key和秘钥进行解析,通过JWT插件验证后,API网关会将相关调用转发到对应的可配置内容微服务组件上进行认证。
调用可配置内容微服务查看菜单/页面的方法,包括如下内容:
第一次调用可配置内容微服务时,可配置内容微服务会调用mysql数据库获取到具体的菜单和页面,同时将菜单和页面信息存入Redis缓存;后续再次调用时,为了更好的数据返回和用户体验,可配置内容微服务会从Redis缓存中获取对应的信息。
后台进行菜单/页面更新的方式:
若Redis缓存中存在菜单和页面数据,可配置内容微服务更新数据库的同时,会同时更新Redis缓存中的信息。对可配置内容微服务信息更新时,会同时记录日志到数据库,方便后续定位问题。
各个服务平台的服务的启用/禁用方法,包含如下内容:
若启用或禁用平台服务,可配置内容微服务会将请求发给对应服务平台的API网关,API网关通过JWT验证后,修改API网关中的request-termination插件的enable状态。该平台用户在禁用状态访问页面进行服务请求时,API网关会给出友好提示,不会抛出未设定的异常,造成不好的用户体验。具体调用关系图如图2所示。
每个服务平台上的可配置内容微服务都是一个完整独立的项目,可以独立运行。其他平台的可配置内容微服务产生问题也不会互相影响。各个环境不会互相影响,也更加灵活。
图1所示为本发明方法实现的系统的整体架构图,本发明实施例的内容配置管理台的功能:菜单设置、页面及模板配置、服务协议设置、关联平台启用禁用设置、操作日志设置。API网关Kong包括JWT插件、TOKEN插件和IAM插件。
本发明提供的方法可以实现多平台多页面的内容可配置,所有操作日志可追踪,可以构建出完全自治和傻瓜式的菜单、页面管理系统。
本方案实现权限控制,主要是通过将权限和一类后台用户角色进行绑定,来进行集中配置和管理;也可以在后台增加用户组或直接赋权给用户,来实现权限管理。具体的,本发明方法的所有用户的访问权限是管理员通过API网关调用用户权限控制微服务进行赋权的,赋权结束,后台实现权限控制管理,前端实现按钮显示和隐藏(即实现不同菜单页面的展示)。利用API网关插件实现多网数据同步和身份验证。
通过以上基于权限的内容可配置方法实现的内容配置管理系统,可以做到:
1、不同的人登录内容管理控制台,看到的菜单页面都不同,例如,全内容配置权限的可以看到内容配置的所有页面和操作按钮;只读内容配置权限的管理员,只能看到配置页面,看不到‘编辑’等写操作的按钮;无内容配置权限的管理员,看不到内容配置的所有页面,若用户直接调用接口,API网关会报‘无权限或访问错误’的异常。
2.实现了多平台的页面、菜单等信息统一管理,方便管理员操作,统一查看。
3.内容配置管理员的所有操作可追踪,若有菜单、页面配置问题,方便定位责任。
4.所有菜单从缓存中读取,提高的页面响应速度,页面菜单可配置,减少了前端的工作量,可以按照用户的需求不同的配置用户控制台菜单,提高了用户体验。
5.产品服务协议变更或重大节日需要更换页面背景时,一键操作,更加灵活、人性化。
本实施例方法实现的系统实际为:以API网关Kong进行身份认证、权限控制和信息传输,结合SpringBoot框架、Redis缓存、mysql数据库进行设计,实现的微服务系统。
本申请方法具体采用API网关kong、redis、mysql、可配置内容微服务、用户权限控制微服务,实现多平台多页面的内容可配置,所有操作日志可追踪,可以构建出完全自治和傻瓜式的菜单、页面管理系统。
本发明方法通过权限对页面和菜单写操作页面进行控制,若有多个平台,在网络互通的情况下,可以配置平台服务log,服务协议,登录页等。若有服务升级,可以一键禁用服务,禁用时可以对服务进行维护,用户访问时,可以提供友好性的提示,一键启用,启用完用户可以正常访问。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种基于权限的内容可配置方法,其特征在于,包括如下步骤:
1)各个服务平台接收用户登录信息后,通过API网关进行身份验证,API网关将用户信息转发到对应的可配置内容微服务组件;
2)对应的可配置内容微服务组件接收API网关信息,对信息进行判断后把对应的数据返回给API网关,API网关再通过TOKEN插件把数据返回给用户端;其中,
当后台对某一服务平台的内容进行修改后,API网关会根据内容配置管理台传过来的平台域名信息、JWT的key和秘钥进行解析,通过JWT插件验证后,API网关会将相关调用转发到对应的可配置内容微服务组件上进行认证。
2.根据权利要求1所述的方法,其特征在于:
调用可配置内容微服务查看菜单/页面的方法,包括如下内容:第一次调用可配置内容微服务时,可配置内容微服务会调用数据库获取到具体的菜单和页面,同时将菜单和页面信息存入缓存;后续再次调用时,可配置内容微服务会从缓存中获取对应的信息;
且当后台进行菜单/页面更新后,若缓存中存在菜单和页面数据,可配置内容微服务更新数据库的同时,会同时更新缓存中的信息;对可配置内容微服务信息更新时,会同时记录日志到数据库。
3.根据权利要求1所述的方法,其特征在于:各个服务平台的服务的启用/禁用方法,包含如下内容:
若启用或禁用平台服务,对应的可配置内容微服务会将请求发给对应服务平台的API网关,API网关通过JWT验证后,修改API网关中的request-termination插件的enable状态;该平台用户在禁用状态访问页面进行服务请求时,API网关会给出友好提示。
4.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至3中任一项所述方法的步骤。。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010242388.1A CN111556023A (zh) | 2020-03-31 | 2020-03-31 | 一种基于权限的内容可配置方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010242388.1A CN111556023A (zh) | 2020-03-31 | 2020-03-31 | 一种基于权限的内容可配置方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111556023A true CN111556023A (zh) | 2020-08-18 |
Family
ID=72003796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010242388.1A Pending CN111556023A (zh) | 2020-03-31 | 2020-03-31 | 一种基于权限的内容可配置方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111556023A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112818325A (zh) * | 2021-01-30 | 2021-05-18 | 浪潮云信息技术股份公司 | 一种基于应用实现api网关独立鉴权的方法 |
CN112887130A (zh) * | 2021-01-18 | 2021-06-01 | 昆山华东信息科技有限公司 | 微服务管理方法及装置 |
CN113688343A (zh) * | 2021-07-23 | 2021-11-23 | 济南浪潮数据技术有限公司 | 一种页面权限控制方法、装置、设备及可读存储介质 |
CN114221949A (zh) * | 2021-11-30 | 2022-03-22 | 北京航天云路有限公司 | 一种适用于公有云平台的api网关实现方法 |
CN114528049A (zh) * | 2022-02-18 | 2022-05-24 | 浪潮云信息技术股份公司 | 一种基于InfluxDB实现API调用信息统计的方法及系统 |
CN115665448A (zh) * | 2022-12-22 | 2023-01-31 | 广东省信息工程有限公司 | 一种基于微服务的权限控制方法、设备、存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107528853A (zh) * | 2017-09-12 | 2017-12-29 | 上海艾融软件股份有限公司 | 微服务权限控制的实现方法 |
CN108156022A (zh) * | 2017-12-04 | 2018-06-12 | 北京奇艺世纪科技有限公司 | 一种服务调用方法、装置及电子设备 |
CN109728974A (zh) * | 2018-12-27 | 2019-05-07 | 北京航天智造科技发展有限公司 | 在线接口调试平台 |
CN109756448A (zh) * | 2017-11-02 | 2019-05-14 | 广东亿迅科技有限公司 | 基于微服务的api网关安全管理方法及其系统 |
CN110086822A (zh) * | 2019-05-07 | 2019-08-02 | 北京智芯微电子科技有限公司 | 面向微服务架构的统一身份认证策略的实现方法及系统 |
CN110784360A (zh) * | 2019-11-01 | 2020-02-11 | 浪潮云信息技术有限公司 | 一种实现Kong声明式配置热更新的方法及系统 |
-
2020
- 2020-03-31 CN CN202010242388.1A patent/CN111556023A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107528853A (zh) * | 2017-09-12 | 2017-12-29 | 上海艾融软件股份有限公司 | 微服务权限控制的实现方法 |
CN109756448A (zh) * | 2017-11-02 | 2019-05-14 | 广东亿迅科技有限公司 | 基于微服务的api网关安全管理方法及其系统 |
CN108156022A (zh) * | 2017-12-04 | 2018-06-12 | 北京奇艺世纪科技有限公司 | 一种服务调用方法、装置及电子设备 |
CN109728974A (zh) * | 2018-12-27 | 2019-05-07 | 北京航天智造科技发展有限公司 | 在线接口调试平台 |
CN110086822A (zh) * | 2019-05-07 | 2019-08-02 | 北京智芯微电子科技有限公司 | 面向微服务架构的统一身份认证策略的实现方法及系统 |
CN110784360A (zh) * | 2019-11-01 | 2020-02-11 | 浪潮云信息技术有限公司 | 一种实现Kong声明式配置热更新的方法及系统 |
Non-Patent Citations (1)
Title |
---|
FOSSILMAN: "Kong插件向导", 《简书》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112887130A (zh) * | 2021-01-18 | 2021-06-01 | 昆山华东信息科技有限公司 | 微服务管理方法及装置 |
CN112887130B (zh) * | 2021-01-18 | 2022-12-30 | 昆山华东信息科技有限公司 | 微服务管理方法及装置 |
CN112818325A (zh) * | 2021-01-30 | 2021-05-18 | 浪潮云信息技术股份公司 | 一种基于应用实现api网关独立鉴权的方法 |
CN113688343A (zh) * | 2021-07-23 | 2021-11-23 | 济南浪潮数据技术有限公司 | 一种页面权限控制方法、装置、设备及可读存储介质 |
CN113688343B (zh) * | 2021-07-23 | 2023-11-03 | 济南浪潮数据技术有限公司 | 一种页面权限控制方法、装置、设备及可读存储介质 |
CN114221949A (zh) * | 2021-11-30 | 2022-03-22 | 北京航天云路有限公司 | 一种适用于公有云平台的api网关实现方法 |
CN114221949B (zh) * | 2021-11-30 | 2024-04-05 | 北京航天云路有限公司 | 一种适用于公有云平台的api网关实现方法 |
CN114528049A (zh) * | 2022-02-18 | 2022-05-24 | 浪潮云信息技术股份公司 | 一种基于InfluxDB实现API调用信息统计的方法及系统 |
CN115665448A (zh) * | 2022-12-22 | 2023-01-31 | 广东省信息工程有限公司 | 一种基于微服务的权限控制方法、设备、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111556023A (zh) | 一种基于权限的内容可配置方法 | |
US11848936B2 (en) | Method, apparatus, and computer program product for selectively granting permissions to group-based objects in a group-based communication system | |
JP6438940B2 (ja) | シングルサインオンのためのウェブベースインターフェース統合 | |
US9356895B2 (en) | Message transmission system and method for a structure of a plurality of organizations | |
US20180218169A1 (en) | Security and data isolation for tenants in a business data system | |
CN105765539B (zh) | 用于自动生成虚拟环境的方法和系统 | |
US8788655B2 (en) | Systems for accepting and approving applications and methods of operation of same | |
US8856322B2 (en) | Supervisory portal systems and methods of operation of same | |
US8745213B2 (en) | Managed services platform and method of operation of same | |
US8650290B2 (en) | Portable computing device and method of operation of same | |
CN102281324B (zh) | 一种移动通信终端系统菜单项远程授权管理的方法 | |
RU2648971C2 (ru) | Синхронизация данных ассоциирования устройств среди вычислительных устройств | |
JP6527535B2 (ja) | 機械可読コードを使用したデバイスの認証およびペアリング | |
US9106740B2 (en) | Transferable device with alterable usage functionality | |
JP7139915B2 (ja) | 通信システム、通信方法、管理装置 | |
US10841342B2 (en) | Data driven user interfaces for device management | |
US11778539B2 (en) | Role-based access control system | |
US20150327064A1 (en) | Message transmission system and method for a structure of a plurality of organizations | |
US20190215380A1 (en) | Data driven user interfaces for device management | |
CN110881039B (zh) | 一种云安全管理系统 | |
US10303343B1 (en) | Data driven user interfaces for device management | |
US7523506B1 (en) | Approach for managing functionalities within a system | |
US9577967B2 (en) | Method and system for managing an informational site using a social networking application | |
CN115941637A (zh) | 静音传送实时讯息的系统与方法 | |
CA3084590A1 (en) | Method and system of in home wi-fi access point replication |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200818 |
|
RJ01 | Rejection of invention patent application after publication |