Browse Source

优化权限控制

zhou-hao 7 years ago
parent
commit
2d4064440f

+ 3 - 2
hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/simple/SimpleRole.java

@@ -3,11 +3,12 @@ package org.hswebframework.web.authorization.simple;
 import org.hswebframework.web.authorization.Role;
 
 /**
- * TODO 完成注释
- *
  * @author zhouhao
  */
 public class SimpleRole implements Role {
+
+    private static final long serialVersionUID = 7460859165231311347L;
+
     private String id;
 
     private String name;

+ 0 - 11
hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/token/DefaultUserTokenManager.java

@@ -58,9 +58,6 @@ public class DefaultUserTokenManager implements UserTokenManager {
 
     }
 
-    //令牌超时事件,默认3600秒
-    private long timeout = 3600;
-
     //异地登录模式,默认允许异地登录
     private AllopatricLoginMode allopatricLoginMode = AllopatricLoginMode.allow;
 
@@ -72,14 +69,6 @@ public class DefaultUserTokenManager implements UserTokenManager {
         this.eventPublisher = eventPublisher;
     }
 
-    public void setTimeout(long timeout) {
-        this.timeout = timeout;
-    }
-
-    public long getTimeout() {
-        return timeout;
-    }
-
     public void setAllopatricLoginMode(AllopatricLoginMode allopatricLoginMode) {
         this.allopatricLoginMode = allopatricLoginMode;
     }

+ 3 - 0
hsweb-authorization/hsweb-authorization-basic/src/main/java/org/hswebframework/web/authorization/basic/web/WebUserTokenInterceptor.java

@@ -46,6 +46,9 @@ public class WebUserTokenInterceptor extends HandlerInterceptorAdapter {
                 userToken = userTokenManager.getByToken(token);
             }
             if ((userToken == null || userToken.isExpired()) && parsedToken instanceof AuthorizedToken) {
+                //先踢出旧token
+                userTokenManager.signOutByToken(token);
+
                 userToken = userTokenManager
                         .signIn(parsedToken.getToken(), parsedToken.getType(), ((AuthorizedToken) parsedToken).getUserId(), ((AuthorizedToken) parsedToken).getMaxInactiveInterval());
             }