[发明专利]web开发前后端分离权限控制方法及系统在审
申请号: | 201911035231.5 | 申请日: | 2019-10-29 |
公开(公告)号: | CN110780876A | 公开(公告)日: | 2020-02-11 |
发明(设计)人: | 许鹏兵;曹东 | 申请(专利权)人: | 北京北纬通信科技股份有限公司 |
主分类号: | G06F8/38 | 分类号: | G06F8/38;G06F16/958;G06F21/60 |
代理公司: | 11603 北京晟睿智杰知识产权代理事务所(特殊普通合伙) | 代理人: | 于淼 |
地址: | 100040 北京市丰*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 初始化 角色 权限控制 调用 菜单功能 业务逻辑 功能接口数据 初始化服务 调用接口 后端接口 角色权限 接口调用 接口数据 接口增加 解耦接口 服务包 复杂度 申请 查询 权限 创建 | ||
本申请公开了一种web开发前后端分离权限控制方法及系统,涉及web系统权限控制技术领域,包括:创建角色;初始化服务包和与服务包对应的接口数据;初始化功能以及与各项功能对应的功能接口数据;初始化菜单和菜单功能;初始化角色菜单;初始化角色菜单功能;初始化角色可调用的接口;进行角色权限控制判断:当有用户调用接口时,后端获取用户的角色;查询用户的角色可调用的接口列表,根据用户的角色可调用的接口列表判断是否可以进行调用。本申请通过解耦接口业务逻辑和权限控制部分,后端接口只需实现业务逻辑,当需要进行接口增加或减少时,只需要修改功能与接口的对应关系,能够简化接口调用权限的控制方法,降低权限控制复杂度。
技术领域
本申请涉及web系统权限控制技术领域,具体地说,涉及一种web开发前后端分离权限控制方法及系统。
背景技术
在web开发中,前后端分离成了主流的技术,通过后端定义接口、生成js(javascript)脚本以及接口文档,前端可以看到后端提供的所有接口,因此,前端可以根据文档调用后端的任意接口,从而实现前后端的数据交互。通过将前后端分离解耦,虽然可以提高开发效率,但同时出于安全考虑,当用户调用后端接口时,要判断该用户是否有权限调用该接口,也即需要对接口调用进行权限控制。
现有技术中的权限控制方法,分为菜单和接口两个模块,两个模块之间没有关联,菜单权限控制粒度较粗,接口权限控制粒度又太细,当要对某一个角色开放菜单中的一部分功能时,必须开放菜单,然后对于菜单中的一部分功能的实现接口进行开放,而且必须针对不同的角色进行定制化的页面开发,无法通过通用配置来实现菜单中的部分功能的开放。而且,当需要新增或删除接口时,所有相关的角色都需要重新配置接口权限。
发明内容
有鉴于此,本申请提供了一种web开发前后端分离权限控制设计方法及系统,通过解耦接口业务逻辑和权限控制部分,后端接口只需实现业务逻辑,当需要进行接口增加或减少时,只需要修改功能与接口的对应关系,能够简化接口调用权限的控制方法,降低权限控制复杂度。
为了解决上述技术问题,本申请有如下技术方案:
一方面,本申请提供一种web开发前后端分离权限控制方法,包括:
创建角色,所述角色包括权限集合,所述权限集合中包括多个权限;
初始化服务包和与所述服务包对应的接口数据,每个所述服务包包含多个接口;
初始化功能以及与各项功能对应的功能接口数据,其中,按照业务逻辑定义功能,并且定义实现各项功能所需要调用的所有接口;
初始化菜单和菜单功能,包括设置菜单名称、级别、图片以及所述菜单与上级菜单的关系,并且设置每一个菜单对应页面的所有功能列表;
初始化角色菜单,包括设置角色可以访问的菜单;
初始化角色菜单功能,包括设置所述角色可以访问的菜单功能;
初始化所述角色可调用的接口,生成所述角色可调用的接口列表;
进行角色权限控制判断:当有用户调用接口时,后端获取所述用户的角色;查询所述用户的角色可调用的接口列表,根据所述用户的角色可调用的接口列表判断是否可以进行调用。
可选地,其中:
还包括:页面功能设置,
所述页面功能设置具体为:前端传入当前菜单id,后端获取所述用户的角色,查询所述角色菜单功能,返回所述角色在所述当前菜单中可以访问的功能列表至前端;前端根据收到的所述功能列表设置界面状态。
可选地,其中:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京北纬通信科技股份有限公司,未经北京北纬通信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911035231.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种更新界面显示方法及电子设备
- 下一篇:基于程序积木的编程系统及其配置装置