Hello,
I am doing an demo of SSO using OpenID Connect protocol. I use MITREid Connect Server as OP (IdP, OpenID Provider). I use spring boot to implement client, I use spring-security-pac4j and pac4j-oidc. Below is the dependencies I added to pom:
<dependency>
<groupId>org.pac4j</groupId>
<artifactId>spring-security-pac4j</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>org.pac4j</groupId>
<artifactId>pac4j-oidc</artifactId>
<version>2.1.0</version>
</dependency>
Below is my configuration for client:
@Bean
public Config config() {
final OidcConfiguration oidcConfiguration = new OidcConfiguration();
oidcConfiguration.setClientId("client-id-1");
oidcConfiguration.setSecret("secret-1");
oidcConfiguration.setScope("openid email profile");
oidcConfiguration.setResponseType("id_token token");
oidcConfiguration.setUseNonce(true);
oidcConfiguration.setDiscoveryURI("https://192.168.7.90:8443/openid-connect-server-webapp/.well-known/openid-configuration");
final OidcClient oidcClient = new OidcClient(oidcConfiguration);
oidcClient.setIncludeClientNameInCallbackUrl(false);
final Clients clients = new Clients("https://192.168.7.40:8443/", oidcClient);
final Config config = new Config(clients);
return config;
}
I got an infinite loop redirection after authenticate and consent. Meaning after authentication and consent on OP, OP redirect me to client but client redirect me to OP again instead of going to protected page. It makes a loop of redirection. Anyone can tell me what I did wrong in my demo?
Any help is appreciated. Thanks.