Shiro配置,整合SpringBoot、Hibernate、Thymeleaf
shiro有什么用
Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码和会话管理
Shiro内置了可以连接大量安全数据源(又名目录)的Realm,如LDAP、关系数据库(JDBC)、类似INI的文本配置资源以及属性文件等。如果系统默认的Realm不能满足需求,你还可以插入代表自定义数据源的自己的Realm实现
三个核心组件
- Subject
- Subject:即“当前操作用户”,但是,在Shiro中,Subject这一概念并不仅仅指人,也可以是第三方进程、后台帐户(Daemon Account)或其他类似事物,它仅仅意味着“当前跟软件交互的东西”
- Subject代表了当前用户的安全操作,SecurityManager则管理所有用户的安全操作
- SecurityManager
- 它是Shiro框架的核心,典型的Facade模式,Shiro通过SecurityManager来管理内部组件实例,并通过它来提供安全管理的各种服务
- Realms
- Realm充当了Shiro与应用安全数据间的“桥梁”或者“连接器”,也就是说,当对用户执行认证(登录)和授权(访问控制)验证时,Shiro会从应用配置的Realm中查找用户及其权限信息
- Realm实质上是一个安全相关的DAO:它封装了数据源的连接细节,并在需要时将相关数据提供给Shiro,当配置Shiro时,你必须至少指定一个Realm,用于认证和(或)授权,配置多个Realm是可以的,但是至少需要一个
搭建SpringBoot+Web+Mysql+Hibernate+Thymeleaf+Druid项目
导入依赖
配置Shiro
- 创建ShiroConfig配置类对应上面讲的三个核心组件
- 创建Realm类
Hibernate整合Shiro
- 这里对应上面创建Realm类中用到的认证账号和用户密码
注意 :别忘了创建service层,上面用的@Autowired注入是注入的对应service层的方法
- 这里对应上面创建Realm类中用到的getPermissionsById()方法
注意:别忘了写pojo实体层
Thymeleaf整合Shiro
- xmlns:th="http://www.thymeleaf.org"
- xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-shiro"
__EOF__

本文作者:一只小狐疑
本文链接:https://www.cnblogs.com/Huyi-1208/p/16385944.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/Huyi-1208/p/16385944.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构