merge
This commit is contained in:
@@ -91,6 +91,7 @@ public class KickoutSessionControlFilter extends AccessControlFilter {
|
||||
// 如果队列里没有此sessionId,且用户没有被踢出;放入队列
|
||||
if (!deque.contains(sessionId) && session.getAttribute("kickout") == null) {
|
||||
deque.push(sessionId);
|
||||
|
||||
}
|
||||
// 如果队列里的sessionId数超出最大会话数,开始踢人
|
||||
while (deque.size() > maxSession) {
|
||||
|
||||
@@ -115,8 +115,8 @@ public class ShiroConfig {
|
||||
///////////////////////shiroRealm///////////////////
|
||||
@Bean
|
||||
@DependsOn("lifecycleBeanPostProcessor")
|
||||
public MyShiroRealm shiroRealm() {
|
||||
MyShiroRealm myShiroRealm = new MyShiroRealm();
|
||||
public UserRealm shiroRealm() {
|
||||
UserRealm myShiroRealm = new UserRealm();
|
||||
myShiroRealm.setCacheManager(cacheManager());
|
||||
myShiroRealm.setAuthorizationCachingEnabled(false);
|
||||
return myShiroRealm;
|
||||
@@ -130,9 +130,18 @@ public class ShiroConfig {
|
||||
redisManager.setPort(6379);
|
||||
redisManager.setExpire(1800);//配置缓存过期时间
|
||||
redisManager.setTimeout(10000);
|
||||
// redisManager.setPassword();
|
||||
return redisManager;
|
||||
}
|
||||
|
||||
///////////////////////sessionManager///////////////////
|
||||
@Bean
|
||||
public DefaultWebSessionManager sessionManager() {
|
||||
DefaultWebSessionManager sessionManager = new DefaultWebSessionManager();
|
||||
sessionManager.setSessionDAO(redisSessionDAO());
|
||||
return sessionManager;
|
||||
}
|
||||
|
||||
///////////////////////cacheManager///////////////////
|
||||
@Bean
|
||||
@DependsOn("lifecycleBeanPostProcessor")
|
||||
@@ -142,14 +151,6 @@ public class ShiroConfig {
|
||||
return redisCacheManager;
|
||||
}
|
||||
|
||||
///////////////////////sessionManager///////////////////
|
||||
@Bean
|
||||
public DefaultWebSessionManager sessionManager() {
|
||||
DefaultWebSessionManager sessionManager = new DefaultWebSessionManager();
|
||||
sessionManager.setSessionDAO(redisSessionDAO());
|
||||
return sessionManager;
|
||||
}
|
||||
|
||||
@Bean
|
||||
public RedisSessionDAO redisSessionDAO() {
|
||||
RedisSessionDAO redisSessionDAO = new RedisSessionDAO();
|
||||
|
||||
+1
-2
@@ -34,7 +34,7 @@ import java.util.Set;
|
||||
* 说明: 自定义realm
|
||||
*/
|
||||
@Component
|
||||
public class MyShiroRealm extends AuthorizingRealm {
|
||||
public class UserRealm extends AuthorizingRealm {
|
||||
@Resource
|
||||
private SysUserService sysUserService;
|
||||
@Resource
|
||||
@@ -86,7 +86,6 @@ public class MyShiroRealm extends AuthorizingRealm {
|
||||
*
|
||||
* @param authenticationToken
|
||||
* @return
|
||||
* @throws AuthenticationException
|
||||
*/
|
||||
@Override
|
||||
protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken) {
|
||||
Reference in New Issue
Block a user