SpringBoot 集成 Shiro 与 Redis 实现 Session 共享
概述
在分布式系统中,单点登录后的会话(Session)需要在多个服务节点间共享。SpringBoot 结合 Apache Shiro 进行权限管理时,默认 Session 存储在内存中,重启即失效且无法跨节点。引入 Redis 可实现 Session 的集中存储与共享。
核心依赖
需引入 Shiro 相关依赖及 Redis 客户端依赖。
配置步骤
- 配置 Redis 连接信息。
- 自定义 RedisSessionDAO,继承自 DefaultSessionDAO。
- 配置 WebSessionManager,指定 RedisSessionDAO 为 SessionDAO。
- 启用 Shiro 注解支持。
注意事项
确保 Redis 集群稳定性,注意 Session 过期时间配置与业务逻辑的一致性。

