Shiro 如何使用注解式进行授权操作呢?
作者:互联网
转自:
http://www.java265.com/JavaCourse/202201/2169.html
下文笔者讲述Shiro进行注解式授权操作的方法分享,如下所示:
Shiro注解授权,常使用以下注解字段,如: RequiresRoles/RequiresPermissions/RequiresAuthentication/RequiresUser等
@RequiresAuthentication
当前Subject已经在session中验证通过(验证当前用户是否登录:subject.isAuthenticated() 结果为true)
@RequiresUser
验证用户是否被记忆,user有两种含义:
1.一种是成功登录的(subject.isAuthenticated()结果为true) 2.另外一种是被记忆的(subject.isRemembered()结果为true)
@RequiresGuest
用户没有登录认证或被记住过,验证是否是一个guest的请求,与@RequiresUser完全相反。换言之,RequiresUser == !RequiresGuest。此时subject.getPrincipal() 结果为null.
@RequiresPermissions
验证用户是否具有一个或多个权限,该注解将会经常在项目中使用,如果不满足条件则抛出AuthorizationException异常
1.是否具有某一权限@RequiresPermission("account:create") 2.是否具有多个权限@RequiresPermission({"account:create","account:update"})
@RequiresRoles
验证当前用户是否具有某角色,与验证权限类似
@RequiresRoles("super")
public string addAdmin(String username,String pwd){ return adminService.addAdmin(username,pwd); }
标签:验证,RequiresUser,授权,注解,true,Shiro,subject 来源: https://www.cnblogs.com/java265/p/16523337.html