关于roles["xxx","xxx"]的问题

来源:4-4 Shiro过滤器

FP1995XY

2018-09-28 09:45

我建立的用户拥有两个角色 admin 和 1 但是我在shiro.xml配置的时候 roles["admin","admin1"]提示成功roles["admin"}也成功,这是 与 的关系么,我怎么看是 或 啊 

写回答 关注

4回答

  • zzzzzzz小盆友
    2019-03-05 16:45:05

    roles参数可以写多个,多个时必须加上引号,并且参数之间用逗号分割,当有多个参数时,每个参数通过才算通过,相当于hasAllRoles()方法。shiro的角色过滤是and的关系。

  • zzzzzzz小盆友
    2019-03-05 16:42:28

    shiro默认对于角色授权的拦截是and关系,只有当该用户拥有配置的一个多个角色是才可通过

  • ISU4869
    2018-10-02 20:52:06

    roles的filter是通过subject.hasRoles(roles)判断是否满足所有权限,可以理解为and关系。

    对于roles["admin","admin1"],由于用户拥有两个角色,所以subject.hasRoles()方法都可以通过,所以显示成功;

    同理,roles["admin"]也可以通过subject.hasRoles()方法。

  • 慕仙6047378
    2018-09-28 10:06:56

    也许是你缓存了吧,roles 就是或的关系

Shiro安全框架入门

从零入门Shiro安全框架

48049 学习 · 347 问题

查看课程

相似问题