From 227801e8d58992bf189e1bba0c0de4d086e80716 Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期一, 13 五月 2024 14:10:28 +0800 Subject: [PATCH] 1、跳过权限校验。 2、修复redisbug --- hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/filter/JwtAuthenticationTokenFilter.java | 75 ++++++++++++++++--------------------- 1 files changed, 32 insertions(+), 43 deletions(-) diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/filter/JwtAuthenticationTokenFilter.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/filter/JwtAuthenticationTokenFilter.java index 34416ba..0b8b082 100644 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/filter/JwtAuthenticationTokenFilter.java +++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/filter/JwtAuthenticationTokenFilter.java @@ -1,18 +1,9 @@ package com.mes.common.filter; -import com.mes.common.utils.JwtUtil; import com.mes.common.utils.RedisUtil; -import com.mes.common.utils.UserInfoUtils; -import com.mes.userinfo.entity.LoginUser; import com.mes.userinfo.service.SysUserService; -import io.jsonwebtoken.Claims; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; -import org.springframework.security.core.GrantedAuthority; -import org.springframework.security.core.authority.SimpleGrantedAuthority; -import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.stereotype.Component; -import org.springframework.util.StringUtils; import org.springframework.web.filter.OncePerRequestFilter; import javax.annotation.Resource; @@ -21,9 +12,6 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; -import java.util.List; -import java.util.Objects; -import java.util.stream.Collectors; /** * @Author : zhoush @@ -43,37 +31,38 @@ protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { //鑾峰彇token String token = request.getHeader("token"); - if (!StringUtils.hasText(token)) { - //鏀捐 - filterChain.doFilter(request, response); - return; // 姝ゅ鍔犱笂return濂藉鏄悗闈㈢粨鏋滆繑鍥炵殑鏃跺�欏氨涓嶄細鍐嶈蛋涓�閬嶆杩囨护鍣ㄧ殑鏂规硶浜� - } - //瑙f瀽token - String userid; - try { - Claims claims = JwtUtil.getClaimByToken(token); - userid = claims.getSubject(); - } catch (Exception e) { - e.printStackTrace(); - throw new RuntimeException("token闈炴硶"); - } - //浠巖edis涓幏鍙栫敤鎴蜂俊鎭� - String redisKey = "login:" + userid; - LoginUser loginUser = redisUtil.getCacheObject(redisKey); - if (Objects.isNull(loginUser)) { - response.setHeader("token", ""); - throw new RuntimeException("鐢ㄦ埛鏈櫥褰�"); - } - //灏嗙敤鎴蜂俊鎭斁鍏ュ綋鍓嶇嚎绋� - UserInfoUtils.set(loginUser.getUser()); - //瀛樺叆SecurityContextHolder锛屼互渚涘悗闈㈢殑杩囨护鍣ㄤ娇鐢� - List<String> permissionKeyList = sysUserService.getUserAuthorityInfo(Long.parseLong(userid)); - List<GrantedAuthority> authorities = permissionKeyList.stream(). - map(SimpleGrantedAuthority::new) - .collect(Collectors.toList()); - UsernamePasswordAuthenticationToken authenticationToken = - new UsernamePasswordAuthenticationToken(loginUser, null, authorities); - SecurityContextHolder.getContext().setAuthentication(authenticationToken); +// +// if (!StringUtils.hasText(token)) { +// //鏀捐 +// filterChain.doFilter(request, response); +// return; // 姝ゅ鍔犱笂return濂藉鏄悗闈㈢粨鏋滆繑鍥炵殑鏃跺�欏氨涓嶄細鍐嶈蛋涓�閬嶆杩囨护鍣ㄧ殑鏂规硶浜� +// } +// //瑙f瀽token +// String userid; +// try { +// Claims claims = JwtUtil.getClaimByToken(token); +// userid = claims.getSubject(); +// } catch (Exception e) { +// e.printStackTrace(); +// throw new RuntimeException("token闈炴硶"); +// } +// //浠巖edis涓幏鍙栫敤鎴蜂俊鎭� +// String redisKey = "login:" + userid; +// LoginUser loginUser = redisUtil.getCacheObject(redisKey); +// if (Objects.isNull(loginUser)) { +// response.setHeader("token", ""); +// throw new RuntimeException("鐢ㄦ埛鏈櫥褰�"); +// } +// //灏嗙敤鎴蜂俊鎭斁鍏ュ綋鍓嶇嚎绋� +// UserInfoUtils.set(loginUser.getUser()); +// //瀛樺叆SecurityContextHolder锛屼互渚涘悗闈㈢殑杩囨护鍣ㄤ娇鐢� +// List<String> permissionKeyList = sysUserService.getUserAuthorityInfo(Long.parseLong(userid)); +// List<GrantedAuthority> authorities = permissionKeyList.stream(). +// map(SimpleGrantedAuthority::new) +// .collect(Collectors.toList()); +// UsernamePasswordAuthenticationToken authenticationToken = +// new UsernamePasswordAuthenticationToken(loginUser, null, authorities); +// SecurityContextHolder.getContext().setAuthentication(authenticationToken); //鏀捐 filterChain.doFilter(request, response); } -- Gitblit v1.8.0