|
@@ -25,7 +25,10 @@ import sample.jose.Jwks;
|
|
|
|
|
|
import org.springframework.context.annotation.Bean;
|
|
|
import org.springframework.context.annotation.Configuration;
|
|
|
-import org.springframework.context.annotation.Import;
|
|
|
+import org.springframework.core.Ordered;
|
|
|
+import org.springframework.core.annotation.Order;
|
|
|
+import org.springframework.security.config.Customizer;
|
|
|
+import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
|
|
import org.springframework.security.config.annotation.web.configuration.OAuth2AuthorizationServerConfiguration;
|
|
|
import org.springframework.security.oauth2.core.AuthorizationGrantType;
|
|
|
import org.springframework.security.oauth2.core.ClientAuthenticationMethod;
|
|
@@ -34,15 +37,22 @@ import org.springframework.security.oauth2.server.authorization.client.InMemoryR
|
|
|
import org.springframework.security.oauth2.server.authorization.client.RegisteredClient;
|
|
|
import org.springframework.security.oauth2.server.authorization.client.RegisteredClientRepository;
|
|
|
import org.springframework.security.oauth2.server.authorization.config.ProviderSettings;
|
|
|
+import org.springframework.security.web.SecurityFilterChain;
|
|
|
|
|
|
/**
|
|
|
* @author Joe Grandja
|
|
|
* @since 0.0.1
|
|
|
*/
|
|
|
@Configuration(proxyBeanMethods = false)
|
|
|
-@Import(OAuth2AuthorizationServerConfiguration.class)
|
|
|
public class AuthorizationServerConfig {
|
|
|
|
|
|
+ @Bean
|
|
|
+ @Order(Ordered.HIGHEST_PRECEDENCE)
|
|
|
+ public SecurityFilterChain authorizationServerSecurityFilterChain(HttpSecurity http) throws Exception {
|
|
|
+ OAuth2AuthorizationServerConfiguration.applyDefaultSecurity(http);
|
|
|
+ return http.formLogin(Customizer.withDefaults()).build();
|
|
|
+ }
|
|
|
+
|
|
|
// @formatter:off
|
|
|
@Bean
|
|
|
public RegisteredClientRepository registeredClientRepository() {
|
|
@@ -53,8 +63,8 @@ public class AuthorizationServerConfig {
|
|
|
.authorizationGrantType(AuthorizationGrantType.AUTHORIZATION_CODE)
|
|
|
.authorizationGrantType(AuthorizationGrantType.REFRESH_TOKEN)
|
|
|
.authorizationGrantType(AuthorizationGrantType.CLIENT_CREDENTIALS)
|
|
|
- .redirectUri("http://localhost:8080/login/oauth2/code/messaging-client-oidc")
|
|
|
- .redirectUri("http://localhost:8080/authorized")
|
|
|
+ .redirectUri("http://127.0.0.1:8080/login/oauth2/code/messaging-client-oidc")
|
|
|
+ .redirectUri("http://127.0.0.1:8080/authorized")
|
|
|
.scope(OidcScopes.OPENID)
|
|
|
.scope("message.read")
|
|
|
.scope("message.write")
|