【技术实现步骤摘要】
一种功能权限与接口权限结合的用户权限控制方法及系统
[0001]本专利技术属于用户权限控制
,尤其是涉及一种功能权限与接口权限结合的用户权限控制方法及系统。
技术介绍
[0002]在用户权限控制
,功能权限包括页面权限和操作权限,在web开发中,通常有这样的需求,不同的用户看到不同的菜单,即不同的用户拥有不同的页面权限,比如,普通用户能看到业务菜单,系统用户只能看到系统设置菜单;另外还通常包括不同的用户具有不同的操作权限的需求,例如,系统用户具有删除,禁用等敏感操作权限,而普通用户只有删除,禁用等敏感操作权限之外的其他权限,如查看和编辑等功能。
[0003]对于以上需求,假如只是控制功能权限,使不同角色查看不同的功能,而不对接口权限加以限制,则会因为页面渲染不走后端,不法用户可以通过篡改页面而直接操作接口,绕过权限的控制,获取任何后端数据,进而造成安全问题。
[0004]因此,既要控制功能权限又要控制接口权限。功能权限包括页面权限和操作权限,即菜单权限和按钮权限。通常,一个菜单权限对应多个按钮权限 ...
【技术保护点】
【技术特征摘要】
1.一种功能权限与接口权限结合的用户权限控制方法,其特征在于,包括:为页面资源设置菜单权限,为敏感操作设置按钮权限,将所有菜单权限、所有按钮权限均纳入资源权限表,配置各资源权限的信息,包括接口url,其中,所述菜单权限允许访问,所述按钮权限禁止访问;配置用户角色关联表、角色资源关联表,使用户与资源权限表进行关联;用户登录时,获取用户对应角色的资源权限,形成权限列表存入缓存;获取所述权限列表中允许访问的资源权限,在前端页面展示对应的菜单;前端页面请求后端接口时,获取所述权限列表中禁止访问的资源权限,若请求的路径不属于禁止访问的资源权限对应的接口url,则进一步获取权限列表中允许访问的资源权限;若请求的路径与允许访问的资源权限对应的接口url匹配,则执行该请求。2.根据权利要求1所述的功能权限与接口权限结合的用户权限控制方法,其特征在于:各资源权限的信息,包括:资源id、资源名称、前端页面访问路径、资源类型、接口url和访问类型;所述资源类型为菜单,则访问类型为允许访问;所述资源类型为按钮,则访问类型为禁止访问。3.根据权利要求1所述的功能权限与接口权限结合的用户权限控制方法,其特征在于:将所述权限列表加入key为用户id的缓存。4.根据权利要求3所述的功能权限与接口权限结合的用户权限控制方法,其特征在于:前端页面请求后端接口时,首先根据用户id调用缓存中的所述权限列表;若不存在缓存的权限列表,则根据用户、角色和资源权限的关联关系到数据库中加载,并存入缓存。5.根据权利要求1所述的功能权限与接口权限结合的用户权限控制方法,其特征在于:获取所述权限列表中禁止访问的资源权限及对应的接口url,形成禁止访问资源列表;遍历所有禁止访问资源列表,若所述后端接口与所述禁止访问资源列表中资源权限对应的接口url匹配,则跳出遍历循环,提示鉴权失败,无接口访问权限;若遍历完成,没有匹配的资源权限对应的接口url,则该请求的后端接口不在禁止访问资源列表中。6.根据权利要求1所...
【专利技术属性】
技术研发人员:张世昌,李铭,张丽丽,刘伟珊,
申请(专利权)人:山东可信云信息技术研究院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。