Shiro具体的权限是在实现类中以annotation的形式指派
来源:互联网 发布:python自动化开发 编辑:程序博客网 时间:2024/05/30 04:44
doGetAuthorizationInfo函数是授权的函数,其具体的权限是在实现类中以annotation的形式指派的,它负责验证用户是否有权限访问。详细的细节容我之后添加。
@RequiresAuthentication
要求当前Subject 已经在当前的session 中被验证通过才能被注解的类/实例/方法访问或调用。
验证用户是否登录,等同于方法subject.isAuthenticated() 结果为true时。
@RequiresUser
需要当前的Subject 是一个应用程序用户才能被注解的类/实例/方法访问或调用。要么是通过验证被确认,或者在之前session 中的'RememberMe'服务被记住。
验证用户是否被记忆,user有两种含义:一种是成功登录的(subject.isAuthenticated() 结果为true);另外一种是被记忆的(subject.isRemembered()结果为true)。
@RequiresGuest
要求当前的Subject 是一个“guest”,也就是他们必须是在之前的session中没有被验证或记住才能被注解的类/实例/方法访问或调用。
验证是否是一个guest的请求,与@RequiresUser完全相反。
换言之,RequiresUser == !RequiresGuest。此时subject.getPrincipal() 结果为null.
@RequiresRoles
要求当前的Subject 拥有所有指定的角色。如果他们没有,则该方法将不会被执行,而且AuthorizationException 异常将会被抛出。例如:@RequiresRoles("administrator")
或者@RequiresRoles("aRoleName");
void someMethod();
如果subject中有aRoleName角色才可以访问方法someMethod。如果没有这个权限则会抛出异常AuthorizationException。
@RequiresPermissions
要求当前的Subject 被允许一个或多个权限,以便执行注解的方法,比如:
@RequiresPermissions("account:create")
或者@RequiresPermissions({"file:read", "write:aFile.txt"} )
void someMethod();
- Shiro具体的权限是在实现类中以annotation的形式指派
- spring中动态代理的实现(annotation形式实现)
- Shiro 是 JAVA 世界中新近出现的权限框架
- 在html中以applet的形式展示worldwind
- 在Excel中让数字以文本的形式显示
- 在QT中以日历的形式选择时间
- shiro的具体理解
- aop:config在shiro权限注解中发挥的作用
- 以指派问题为例写的一个用循环实现dfs的方法.(gcc)
- 面试的具体形式
- golang实现读取当前所在文件夹里面的txt数据,去除空格,以列的形式保存在excel中
- 在hive中设置超级管理员以实现hive级的权限管理
- shiro实现基于角色的权限授权
- 利用shiro实现权限的动态控制
- 在java中实现zip压缩文件的具体实现
- 函数调用是如何在系统中实现的-以C为例
- OEC管理模式的具体形式
- IoC 的一种具体形式
- PAT 1003. 我要通过!(20) —— java
- Android中MD5(16位或32位)加密工具类.
- list的三种循环方式
- http://www.importnew.com/15731.html
- Java基础第9讲--面向对象之继承
- Shiro具体的权限是在实现类中以annotation的形式指派
- hbuilder项目总结:区分手机是Android系统还是ios系统
- Java多线程基础之对象锁的同步与异步
- Spring AOP详解
- linux 下放置可下载文件
- 动态网页开发基础
- Modifying BAQ to query with parameters
- 【stm32f407】stm32串口实验
- 关于NFC使用哪些传输协议