如何动态数据库获取所需的权限?

来源:4-4 Shiro过滤器

3232505

2018-04-18 00:38

如题,课程中均是硬编码配置所需权限或角色,如何动态去获取呢?

写回答 关注

2回答

  • Java猫说
    2018-04-19 11:04:29
    已采纳

    嗯。。。以下是个人的理解,不知道合适不,我理解你的意思了,我们可以动态创建filterchaindefinitions,有时,在某些系统想通过读取数据库来定义org.apache.shiro.spring.web.ShiroFilterFactoryBean的filterChainDefinitions。这样能够通过操作界面或者维护后台来管理系统的链接。项目启动时,shrio通过自己的org.apache.shiro.spring.web.ShiroFilterFactoryBean类的filterChainDefinitions(授权规则定义)属性转换为一个filterChainDefinitionMap,转换完成后交给ShiroFilterFactoryBean保管。ShiroFilterFactoryBean根据授权(AuthorizationInfo类)后的信息去判断哪些链接能访问哪些链接不能访问。filterChainDefinitionMap里面的键就是链接URL,值就是存在什么条件才能访问该链接,如perms、roles。filterChainDefinitionMap是一个Map,shiro扩展出一个Map的子类Ini.Section


    323250...

    对的,看了你的回答豁然开朗,是我想要的答案。谨再次拜谢!

    2018-04-19 11:59:52

    共 1 条回复 >

  • Java猫说
    2018-04-18 14:15:29

    讲师在讲到数据库系列的时候,有去数据库查询呀,这样就是动态的获取了,不再是硬编码

    323250...

    首先感谢回复。数据库查的是当前登录用户拥有的角色,当前url所需的角色如何做到动态呢?

    2018-04-18 20:00:41

    共 1 条回复 >

Shiro安全框架入门

从零入门Shiro安全框架

48036 学习 · 332 问题

查看课程

相似问题