
Filter
JoeElena
一分耕耘一分收获
展开
-
Springboot+Shiro 基于URL 动态控制权限
前言: 权限控制有 注解的方式,jsp shiro标签的方式,还有url 动态控制的方式。这里我使用最后一种方式来控制权限思路:0.利用 PathMatchingFilter 拦截器1.根据用户名 来查询角色,2.根据角色查询权限3.获取请求的url 4判断 根据用户名查询的权限 是否包括 请求的url5.如果包括 则 放行,不包括重定向到 未授权界面p...原创 2018-08-13 19:21:57 · 12104 阅读 · 10 评论 -
Springboot+shiro+redis 限制同一账号 同时在多处登录
这里的业务场景,就类似与qq 账号 不能同时在多部手机 登录一样,后者会强制前者下线,被强制下线的用户重新登录又挤掉 前者,如此反复.....一. 思路是从网上 看到的(酌情参考)1. 利用Cookie 里面的JESSIONID ,其实也就是sessionid,是可以获取到的2.利用 Deque 双向队列,最大 maxSize 设置为13.利用redis 缓存 ,将 Deque 存...原创 2018-08-13 19:01:24 · 7798 阅读 · 8 评论 -
Springboot 使用注解方式 配置Filter
在启动类上 加上注解 //过滤器开关@ServletComponentScan@SpringBootApplication//开启缓存功能@EnableCaching//定时器总开关@EnableScheduling//过滤器开关@ServletComponentScanpublic class ShiroApplication { public stati...原创 2018-07-05 20:25:04 · 1299 阅读 · 1 评论 -
Springboot+shiro 踢出SessionId
运用场景 : 管理员踢出在线用户,让其页面失效。重登即可激活思路:1.利用sessionId ,如果踢出 将其标记为 0,重定向到 踢出页面2.在登录的时候,将sessionId 标记为1,表示 已激活 可以正常使用3.将 sessionId 和值,存入redis hash表里面,每次比较 从redis 中取出4.利用 HandlerInterceptorAdapter 拦截...原创 2018-08-13 19:42:27 · 2430 阅读 · 0 评论 -
Springboot + redis+shiro 限制 同一账号 同时 多处登录
从网上看了很多解决方案,用的最多的 应当是SessionId 了。方案虽多,适合自己的才是最好的。之前做了一个 在线用户的统计 和 管理员 踢出激活在线用户的功能,因此我得到了一个启发。程序是死的,人是活得,我可不可以定一些规则,让程序 根据我的规定 来 运行。思路:1.定规则。将 踢出的用户 画一个标识,也就是 访问的Sess ionId。踢出了 我将它标记为false如果 ...原创 2018-08-23 15:10:44 · 6931 阅读 · 3 评论