小白一枚,在使用springboot+shiro的时候,发现一个问题,使用注解来判断
用户是否具有该权限时,
@RequiresRoles(value = {"admin"},logical = Logical.AND)
退出当前用户后
Subject subject = SecurityUtils.getSubject();
subject.logout();
shiro始终使用的是第一个登录用户的权限角色信息,
也就是说如果我第一次登录admin用户后,访问带有权限验证的注解时,shiro会去调用方法如下
AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals)
我在这里去构建了该用户的权限,我了解shiro会缓存用户的认证和授权,但是用户退出后,shiro依然缓存上一个用户的权限。
因为没太明白shiro对授权这一块是否有缓存,或者说缓存机制是怎么样的,所以这个问题一直没解决。