|
@@ -30,6 +30,7 @@ import org.springframework.context.annotation.Bean;
|
|
|
import org.springframework.context.annotation.Configuration;
|
|
|
import org.springframework.core.Ordered;
|
|
|
import org.springframework.core.annotation.Order;
|
|
|
+import org.springframework.http.MediaType;
|
|
|
import org.springframework.jdbc.core.JdbcTemplate;
|
|
|
import org.springframework.jdbc.datasource.embedded.EmbeddedDatabase;
|
|
|
import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseBuilder;
|
|
@@ -55,6 +56,7 @@ import org.springframework.security.oauth2.server.authorization.token.JwtEncodin
|
|
|
import org.springframework.security.oauth2.server.authorization.token.OAuth2TokenCustomizer;
|
|
|
import org.springframework.security.web.SecurityFilterChain;
|
|
|
import org.springframework.security.web.authentication.LoginUrlAuthenticationEntryPoint;
|
|
|
+import org.springframework.security.web.util.matcher.MediaTypeRequestMatcher;
|
|
|
|
|
|
/**
|
|
|
* @author Joe Grandja
|
|
@@ -116,8 +118,11 @@ public class AuthorizationServerConfig {
|
|
|
|
|
|
// @formatter:off
|
|
|
http
|
|
|
- .exceptionHandling(exceptions ->
|
|
|
- exceptions.authenticationEntryPoint(new LoginUrlAuthenticationEntryPoint("/login"))
|
|
|
+ .exceptionHandling((exceptions) -> exceptions
|
|
|
+ .defaultAuthenticationEntryPointFor(
|
|
|
+ new LoginUrlAuthenticationEntryPoint("/login"),
|
|
|
+ new MediaTypeRequestMatcher(MediaType.TEXT_HTML)
|
|
|
+ )
|
|
|
)
|
|
|
.oauth2ResourceServer(oauth2ResourceServer ->
|
|
|
oauth2ResourceServer.jwt(Customizer.withDefaults()));
|