修复关闭接口鉴权时,处于忽略地址中的接口不可用的问题

2.6.7
648540858 2023-04-03 10:53:54 +08:00
parent a4328e3d4f
commit 3dfbc843ad
2 changed files with 17 additions and 16 deletions

View File

@ -38,7 +38,6 @@ public class JwtAuthenticationFilter extends OncePerRequestFilter {
return; return;
} }
if (!userSetting.isInterfaceAuthentication()) { if (!userSetting.isInterfaceAuthentication()) {
// 构建UsernamePasswordAuthenticationToken,这里密码为null是因为提供了正确的JWT,实现自动登录
UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(null, null, new ArrayList<>() ); UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(null, null, new ArrayList<>() );
SecurityContextHolder.getContext().setAuthentication(token); SecurityContextHolder.getContext().setAuthentication(token);
chain.doFilter(request, response); chain.doFilter(request, response);

View File

@ -72,7 +72,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
**/ **/
@Override @Override
public void configure(WebSecurity web) { public void configure(WebSecurity web) {
if (userSetting.isInterfaceAuthentication()) {
ArrayList<String> matchers = new ArrayList<>(); ArrayList<String> matchers = new ArrayList<>();
matchers.add("/"); matchers.add("/");
matchers.add("/#/**"); matchers.add("/#/**");
@ -84,10 +84,12 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
matchers.add("/v3/api-docs/**"); matchers.add("/v3/api-docs/**");
matchers.add("/js/**"); matchers.add("/js/**");
matchers.add("/api/device/query/snap/**"); matchers.add("/api/device/query/snap/**");
matchers.add("/record_proxy/*/**");
matchers.addAll(userSetting.getInterfaceAuthenticationExcludes()); matchers.addAll(userSetting.getInterfaceAuthenticationExcludes());
// 可以直接访问的静态数据 // 可以直接访问的静态数据
web.ignoring().antMatchers(matchers.toArray(new String[0])); web.ignoring().antMatchers(matchers.toArray(new String[0]));
} }
}
/** /**
* *