zhongrijian
2024-06-03 54c40c58a5842651d74eb6a62830080c14ccf881
blade-auth/src/main/java/org/springblade/auth/config/SecurityConfiguration.java
@@ -18,14 +18,18 @@
import lombok.AllArgsConstructor;
import lombok.SneakyThrows;
import org.springblade.auth.constant.Oauth2Constants;
import org.springblade.auth.support.BladePasswordEncoderFactories;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.annotation.Order;
import org.springframework.security.authentication.AuthenticationManager;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.builders.WebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.crypto.password.PasswordEncoder;
import javax.annotation.Resource;
/**
 * Security配置
@@ -34,7 +38,11 @@
 */
@Configuration(proxyBeanMethods = false)
@AllArgsConstructor
@Order(1)
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
   @Resource
   private Oauth2Constants oauth2Constants;
   @Bean
   @Override
@@ -52,8 +60,18 @@
   @SneakyThrows
   protected void configure(HttpSecurity http) {
      http.headers().frameOptions().disable();
      http.httpBasic().and().csrf().disable();
      http.formLogin().loginPage("/oauth/login").loginProcessingUrl("/oauth/form");
      http.csrf().disable();
      http.formLogin()
         //自定义认证成功跳转
         .successHandler(new CustomAuthenticationSuccessHandler(oauth2Constants.getAuthorizeUrl()))
         .loginPage(oauth2Constants.getLoginPage())
         .loginProcessingUrl(oauth2Constants.getLoginProcessingUrl())
         .failureHandler(new CustomAuthenticationFailureHandler())
      ;
      // 认证失败自定义登录页跳转
      http.exceptionHandling()
         .authenticationEntryPoint(new CustomAuthenticationEntryPoint(oauth2Constants.getLoginPage()));
   }
   @Override