zhangf
2024-05-08 0414ddb0b2b3a7199ae6181a770f97ac140dbd73
safePlatfrom-out-web/src/main/java/com/gkhy/safePlatform/config/security/WebSecurityConfig.java
@@ -1,6 +1,5 @@
package com.gkhy.safePlatform.config.security;
import com.gkhy.safePlatform.account.rpc.apimodel.NameService;
import com.gkhy.safePlatform.config.security.customzie.CustomizeAccessDeniedHandler;
import com.gkhy.safePlatform.config.security.customzie.CustomizeAuthenticationEntryPoint;
import org.apache.dubbo.config.annotation.DubboReference;
@@ -14,6 +13,7 @@
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.config.http.SessionCreationPolicy;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
@@ -30,12 +30,8 @@
    @Resource
    private CustomizeAuthenticationEntryPoint authenticationEntryPoint;
//    @Resource
//    private TokenAuthenticationFilter tokenAuthenticationFilter;
    @DubboReference(check = false)
    private NameService nameService;
    @Resource
    private TokenAuthenticationFilter tokenAuthenticationFilter;
@@ -48,15 +44,13 @@
        // 关闭session
        http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS);
        // 登录json放行
        http.authorizeRequests().anyRequest().permitAll();
        http.authorizeRequests().antMatchers("/auth/login").permitAll();
        // 关闭
        http.headers().cacheControl();
        // jwt过滤器
//        http.addFilterBefore(tokenAuthenticationFilter, UsernamePasswordAuthenticationFilter.class);
        // 没有登录,没有权限 => 自定义返回
        http.exceptionHandling().authenticationEntryPoint(authenticationEntryPoint).accessDeniedHandler(accessDeniedHandler);
        http.addFilterBefore(tokenAuthenticationFilter, UsernamePasswordAuthenticationFilter.class);
        // 请求认证访问
//        http.authorizeRequests().anyRequest().authenticated();
        http.authorizeRequests().anyRequest().authenticated();
        // 允许跨域访问
        http.cors();
@@ -80,7 +74,7 @@
    @Bean
    @Qualifier("myUserDetailService")
    protected UserDetailsService userDetailsService(){
        return username -> nameService.getUserDetailsByUsername(username);
        return (username)-> (UserDetails) new Object();
    }