基础概念图奉上帮助你更好理解 Shiro 额!!!(感兴趣的小伙伴点赞收藏,谢谢)
- Authentication: 认证 判断是否为合法用户 有时被称为 "登录”,这是证明用户合法
- Authorization: 授权 前提:认证过了; 判断你是否有权访问某个资源
- Session Management: session管理
- Cryptography: 加解密
- Web Support: 支持 web
- Caching: 支持缓存
- Concurrency: 支持并发
- Testing: 支持测试
- "Run As": 用其他用户登录
- "Remember Me": 记住我
当然想要掌握sping-boot集成shiro的前提:
肯定得要相关的依赖
依赖:
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-core</artifactId>
<version>1.4.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.5.6</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.0</version>
</dependency>
ShiroFilter其实是有自己独立的一套相关过滤器链,例如我们前面给小伙伴们的概念图,万变不离其中,多多参透其中的关联关系,你就会发现他自己的一套有关于认证===》》》认证===》》》授权~~~;
所以大家一定要掌握好核心概念图的精髓啊!!!
Shiro还有Web支持,通过Shirofilrter代理给内部的过滤器链,通过每个过滤器实现功能!
刚才忘了核心依赖:在此补上~~
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-spring-boot-web-starter</artifactId>
<version>1.4.1</version>
</dependency>
核心过滤方式供大家参考,有更好的提案可以留言额!!!
大家互相交流,促进成长
Shirofilter过滤完后,其他的过滤连也会逐步进行,不会互相干扰;
相关过滤完后,就会获得对应的Subject和SecurityManager,他们就是真正干事情的,你只负责写他两前后的代码,他们已经代理处理了;
1)放过访问不需要保护的资源请求
2)检查是否认证
3)检查权限
相关过滤参数奉上:(一定)
(避雷小知识)当pom上存在starter-aop依赖时,shiro的注解会导致springmvc的注解失效。解决方案:
@Bean
public static DefaultAdvisorAutoProxyCreator getDefaultAdvisorAutoProxyCreator(){
DefaultAdvisorAutoProxyCreator defaultAdvisorAutoProxyCreator=new DefaultAdvisorAutoProxyCreator();
defaultAdvisorAutoProxyCreator.setUsePrefix(true);
return defaultAdvisorAutoProxyCreator;
}
注入它有神奇的惊喜额!!!
今天先分享到这里,后续有待补充~~~