diff --git a/src/main/java/com/gxwebsoft/common/core/security/JwtAuthenticationFilter.java b/src/main/java/com/gxwebsoft/common/core/security/JwtAuthenticationFilter.java
index 1edca08..d545c25 100644
--- a/src/main/java/com/gxwebsoft/common/core/security/JwtAuthenticationFilter.java
+++ b/src/main/java/com/gxwebsoft/common/core/security/JwtAuthenticationFilter.java
@@ -4,6 +4,8 @@ import cn.hutool.core.util.StrUtil;
import com.gxwebsoft.common.core.Constants;
import com.gxwebsoft.common.core.config.ConfigProperties;
import com.gxwebsoft.common.core.utils.CommonUtil;
+import com.gxwebsoft.common.core.utils.RedisUtil;
+import com.gxwebsoft.common.core.utils.SignCheckUtil;
import com.gxwebsoft.common.system.entity.LoginRecord;
import com.gxwebsoft.common.system.entity.Menu;
import com.gxwebsoft.common.system.entity.User;
@@ -35,51 +37,63 @@ import java.util.stream.Collectors;
*/
@Component
public class JwtAuthenticationFilter extends OncePerRequestFilter {
- @Resource
- private ConfigProperties configProperties;
- @Resource
- private UserService userService;
- @Resource
- private LoginRecordService loginRecordService;
+ @Resource
+ private ConfigProperties configProperties;
+ @Resource
+ private UserService userService;
+ @Resource
+ private LoginRecordService loginRecordService;
+ @Resource
+ private RedisUtil redisUtil;
- @Override
- protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain chain)
- throws ServletException, IOException {
- String access_token = JwtUtil.getAccessToken(request);
- if (StrUtil.isNotBlank(access_token)) {
- try {
- // 解析token
- Claims claims = JwtUtil.parseToken(access_token, configProperties.getTokenKey());
- JwtSubject jwtSubject = JwtUtil.getJwtSubject(claims);
- User user = userService.getByUsername(jwtSubject.getUsername(), jwtSubject.getTenantId());
- if (user == null) {
- throw new UsernameNotFoundException("Username not found");
- }
- List