专栏名称: 码农小胖哥
技术公众号:码农小胖哥
目录
相关文章推荐
厦门日报  ·  年薪945万元!80后女副总裁,首次上榜! ·  17 小时前  
新闻夜航  ·  知名男歌手,突然宣布复出! ·  3 天前  
哈尔滨日报  ·  韵达回应被立案调查 ·  3 天前  
哈尔滨日报  ·  【数字有温度·TA的故事】点翠饰品一年卖出4 ... ·  3 天前  
51好读  ›  专栏  ›  码农小胖哥

Spring Security 实战干货:动态权限控制(上)思路

码农小胖哥  · 掘金  ·  · 2019-11-27 22:51

正文

阅读 138

Spring Security 实战干货:动态权限控制(上)思路

1. 前言

欢迎阅读 Spring Security 实战干货系列 文章 。截止目前已经对 基于配置 基于注解 的角色访问控制进行了讲解。对于一些小项目来说基本是够用的。然而如果希望运营管理人员能够动态的配置和分配权限,以上两种方式显然是满足不了需求的。接下来我们来一起探讨一下思路。

2. 动态的权限控制同样依赖 RBAC 模型

我们依然应该在 RBAC 及其变种的基础上构建动态的权限控制系统。所有被访问的目标,无论是 API、静态资源都应该是关联了角色的东西统称为 资源(Resource) 。我们需要建立起角色和资源之间的关系。

2.1 资源映射到角色

下面是一个资源到角色的映射关系图:

模型大致如上所示,每一个资源对应一个可能无重复的角色集( Set 集合);你可以注意到一个细节 Role 1 既指向 Resource 1 又指向 Resource 2 中,这是可以理解的,毕竟有可能对同一资源的访问权可能分散到多个角色中去;当然也可以互斥这取决于你的业务。我们选择资源映射到角色是因为当请求时,资源是唯一的而角色可能是多个,如果进行反转的话解析的效率低一些。







请到「今天看啥」查看全文