From 54c40c58a5842651d74eb6a62830080c14ccf881 Mon Sep 17 00:00:00 2001
From: zhongrijian <646384940@qq.com>
Date: Mon, 03 Jun 2024 14:05:03 +0800
Subject: [PATCH] 登录失败配置调整

---
 blade-auth/src/main/java/org/springblade/auth/config/SecurityConfiguration.java |   20 ++++++++++++++++++--
 1 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/blade-auth/src/main/java/org/springblade/auth/config/SecurityConfiguration.java b/blade-auth/src/main/java/org/springblade/auth/config/SecurityConfiguration.java
index 2294e4d..6b84157 100644
--- a/blade-auth/src/main/java/org/springblade/auth/config/SecurityConfiguration.java
+++ b/blade-auth/src/main/java/org/springblade/auth/config/SecurityConfiguration.java
@@ -18,6 +18,7 @@
 
 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;
@@ -28,6 +29,8 @@
 import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
 import org.springframework.security.crypto.password.PasswordEncoder;
 
+import javax.annotation.Resource;
+
 /**
  * Security配置
  *
@@ -37,6 +40,9 @@
 @AllArgsConstructor
 @Order(1)
 public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
+
+	@Resource
+	private Oauth2Constants oauth2Constants;
 
 	@Bean
 	@Override
@@ -54,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

--
Gitblit v1.9.3