From 495253345194da937f134cfb2adb9eaf00c413d5 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期日, 08 十月 2023 14:26:10 +0800 Subject: [PATCH] 修改令牌的IP检查功能 --- src/main/java/com/moon/server/service/sys/TokenService.java | 35 +++++++++++++++++++---------------- 1 files changed, 19 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/moon/server/service/sys/TokenService.java b/src/main/java/com/moon/server/service/sys/TokenService.java index 30d3715..40b0698 100644 --- a/src/main/java/com/moon/server/service/sys/TokenService.java +++ b/src/main/java/com/moon/server/service/sys/TokenService.java @@ -23,7 +23,6 @@ * @author sws * @date 2022-09-28 */ - @Service public class TokenService implements TokenMapper { @Autowired @@ -121,6 +120,7 @@ @Override public Integer updateTokenExpire(TokenEntity tokenEntity) { clearCache(tokenEntity.getToken()); + return tokenMapper.updateTokenExpire(tokenEntity); } @@ -128,11 +128,18 @@ * 鑾峰彇鏂扮殑浠ょ墝瀹炰綋绫� */ public TokenEntity getNewToken(UserEntity ue, HttpServletRequest req) { + return getNewToken(0, SettingData.TOKEN_EXPIRE, ue, req); + } + + /** + * 鑾峰彇鏂扮殑浠ょ墝瀹炰綋绫� + */ + public TokenEntity getNewToken(Integer type, Integer min, UserEntity ue, HttpServletRequest req) { TokenEntity te = new TokenEntity(); te.setToken(WebHelper.getGuid()); - te.setDuration(SettingData.TOKEN_EXPIRE); - te.setExpire(WebHelper.getTimestamp(SettingData.TOKEN_EXPIRE)); - te.setType(0); + te.setDuration(min); + te.setExpire(WebHelper.getTimestamp(min)); + te.setType(type); te.setIp(WebHelper.getIpAddress(req)); te.setCreateUser(ue.getId()); te.setUname(ue.getUname()); @@ -157,7 +164,7 @@ // db TokenEntity te = selectOneByToken(token); - if (te != null) { + if (null != te) { redisService.put(tokenKey, te, te.getDuration(), TimeUnit.MINUTES); return true; } @@ -186,7 +193,7 @@ // db锛岃缃护鐗岃繃鏈� te.setUpdateUser(ue.getId()); Integer rows = updateTokenExpire(te); - if (rows == 0) { + if (0 == rows) { return false; } @@ -225,7 +232,7 @@ // db TokenEntity te = selectOneByToken(token); - if (te != null) { + if (null != te) { redisService.put(tokenKey, te, te.getDuration(), TimeUnit.MINUTES); } @@ -265,9 +272,8 @@ return null; } - String userKey = RedisCacheKey.signUserKey(token); - // redis + String userKey = RedisCacheKey.signUserKey(token); Object obj = redisService.get(userKey); if (obj instanceof UserEntity) { return (UserEntity) obj; @@ -275,12 +281,9 @@ // db UserEntity ue = usersService.selectByToken(token); - if (ue != null) { - TokenEntity te = getEntityByToken(token); - if (te != null) { - redisService.put(userKey, ue, te.getDuration(), TimeUnit.MINUTES); - } - } +// if (null != ue) { +// getEntityByToken(token); +// } return ue; } @@ -315,6 +318,6 @@ String key = RedisCacheKey.signPwdError(ue.getUid()); Object objCount = redisService.get(key); - return objCount != null && (int) objCount >= SettingData.PWD_ERR_COUNT; + return null != objCount && (int) objCount >= SettingData.PWD_ERR_COUNT; } } -- Gitblit v1.9.3