From 89f1b542d4cf6c2c4ff920b3dd793167697df18f Mon Sep 17 00:00:00 2001 From: xxssyyyyssxx Date: Tue, 7 May 2019 21:07:36 +0800 Subject: [PATCH 1/2] =?UTF-8?q?token=E7=9A=84key=E5=8F=AF=E9=85=8D?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/wf/jwtp/TokenInterceptor.java | 60 ++++++++++--------- .../JwtPermissionConfiguration.java | 2 +- .../JwtPermissionProperties.java | 10 ++++ 3 files changed, 44 insertions(+), 28 deletions(-) diff --git a/jwt-permission/src/main/java/org/wf/jwtp/TokenInterceptor.java b/jwt-permission/src/main/java/org/wf/jwtp/TokenInterceptor.java index 014feaa..4428476 100644 --- a/jwt-permission/src/main/java/org/wf/jwtp/TokenInterceptor.java +++ b/jwt-permission/src/main/java/org/wf/jwtp/TokenInterceptor.java @@ -29,40 +29,17 @@ public class TokenInterceptor extends HandlerInterceptorAdapter { protected final Log logger = LogFactory.getLog(this.getClass()); private TokenStore tokenStore; private Integer maxToken; + private String tokenKey; - public TokenInterceptor() { - this(null); - } - - public TokenInterceptor(TokenStore tokenStore) { - this(tokenStore, -1); - } - - public TokenInterceptor(TokenStore tokenStore, Integer maxToken) { + public TokenInterceptor(TokenStore tokenStore, Integer maxToken , String tokenKey) { setTokenStore(tokenStore); setMaxToken(maxToken); - } - - public TokenStore getTokenStore() { - return tokenStore; - } - - public void setTokenStore(TokenStore tokenStore) { - this.tokenStore = tokenStore; - } - - public Integer getMaxToken() { - return maxToken; - } - - public void setMaxToken(Integer maxToken) { - this.maxToken = maxToken; - Config.getInstance().setMaxToken(maxToken); + setTokenKey(tokenKey); } @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { - String access_token = request.getParameter("access_token"); + String access_token = request.getParameter(this.tokenKey); if (access_token == null || access_token.trim().isEmpty()) { access_token = request.getHeader("Authorization"); if (access_token != null && access_token.length() >= 7) { @@ -130,4 +107,33 @@ public class TokenInterceptor extends HandlerInterceptorAdapter { Logical logical = annotation.logical(); return SubjectUtil.hasRole(token, requiresRoles, logical); } + + + public TokenStore getTokenStore() { + return tokenStore; + } + + public TokenInterceptor setTokenStore(TokenStore tokenStore) { + this.tokenStore = tokenStore; + return this; + } + + public Integer getMaxToken() { + return maxToken; + } + + public TokenInterceptor setMaxToken(Integer maxToken) { + this.maxToken = maxToken; + Config.getInstance().setMaxToken(maxToken); + return this; + } + + public String getTokenKey() { + return tokenKey; + } + + public TokenInterceptor setTokenKey(String tokenKey) { + this.tokenKey = tokenKey; + return this; + } } diff --git a/jwtp-spring-boot-starter/src/main/java/org/wf/jwtp/configuration/JwtPermissionConfiguration.java b/jwtp-spring-boot-starter/src/main/java/org/wf/jwtp/configuration/JwtPermissionConfiguration.java index 46526ac..cf0a1f5 100644 --- a/jwtp-spring-boot-starter/src/main/java/org/wf/jwtp/configuration/JwtPermissionConfiguration.java +++ b/jwtp-spring-boot-starter/src/main/java/org/wf/jwtp/configuration/JwtPermissionConfiguration.java @@ -65,7 +65,7 @@ public class JwtPermissionConfiguration implements WebMvcConfigurer, Application if (excludePath == null) { excludePath = new String[]{}; } - registry.addInterceptor(new TokenInterceptor(tokenStore(), properties.getMaxToken())) + registry.addInterceptor(new TokenInterceptor(tokenStore(), properties.getMaxToken() , properties.getTokenKey())) .addPathPatterns(path) .excludePathPatterns(excludePath); } diff --git a/jwtp-spring-boot-starter/src/main/java/org/wf/jwtp/configuration/JwtPermissionProperties.java b/jwtp-spring-boot-starter/src/main/java/org/wf/jwtp/configuration/JwtPermissionProperties.java index 3abe396..eeecd1e 100644 --- a/jwtp-spring-boot-starter/src/main/java/org/wf/jwtp/configuration/JwtPermissionProperties.java +++ b/jwtp-spring-boot-starter/src/main/java/org/wf/jwtp/configuration/JwtPermissionProperties.java @@ -17,6 +17,8 @@ public class JwtPermissionProperties { private Integer maxToken; + private String tokenKey = "access_token"; + public Integer getStoreType() { return storeType; } @@ -48,4 +50,12 @@ public class JwtPermissionProperties { public void setMaxToken(Integer maxToken) { this.maxToken = maxToken; } + + public String getTokenKey() { + return tokenKey; + } + + public void setTokenKey(String tokenKey) { + this.tokenKey = tokenKey; + } } -- Gitee From 124a09a733491b3f454dda7d78b0d995db7a2907 Mon Sep 17 00:00:00 2001 From: xxssyyyyssxx Date: Tue, 7 May 2019 21:10:30 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=9B=B4=E6=96=B0README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index ffeba5e..946b8da 100644 --- a/README.md +++ b/README.md @@ -73,6 +73,7 @@ + @@ -106,6 +107,8 @@ jwtp.exclude-path=/,/index,/login ## 单个用户最大token数,默认-1不限制 jwtp.max-token=10 +jwt.token-key=access_token + ## 日志级别设置debug可以输出详细信息 logging.level.org.wf.jwtp=DEBUG ``` -- Gitee