shiro相关链接
springboot整合shiro项目
shiro
shiro的认证和授权的流程:
首先当访问LoginController的时候,当程序执行到subject.login(upToken)时,会自动跳转到MyShiroRealm中的认证方法里面去执行认证的逻辑,认证交由 SimpleAuthenticationInfo 来完成,他会完成身份密码的比较等等功能。
注意登陆的时候是不走授权的方法的,那么什么时候走呢?比如当你访问userController里面的getAllUser方法时,shiro注解@RequiresPermissions这个时候就生效了,shiro知道这个时候我需要user:get的权限字符串,在这里会跳转到MyShiroRealm的授权方法里面,从数据库查询当前登陆的用户是否有这个权限字符串。(第一次查询之后会缓存到session里面,注意修改权限之后需要清空缓存)授权由SimpleAuthorizationInfo 来完成,这个类和认证的很像,别写错了啊。