override remote logout url
This commit is contained in:
parent
cfa85bc813
commit
aba94db0c8
File diff suppressed because it is too large
Load Diff
|
@ -46,6 +46,9 @@ public class OAuth2WebSecurityConfig extends WebSecurityConfigurerAdapter {
|
||||||
@Value("${openaire.api.valid.subnet}")
|
@Value("${openaire.api.valid.subnet}")
|
||||||
private String openaireApiValidSubnet;
|
private String openaireApiValidSubnet;
|
||||||
|
|
||||||
|
@Value("${openaire.override.logout.url}")
|
||||||
|
private String openaireLogoutUrl;
|
||||||
|
|
||||||
private static Logger logger = LoggerFactory.getLogger(OAuth2WebSecurityConfig.class);
|
private static Logger logger = LoggerFactory.getLogger(OAuth2WebSecurityConfig.class);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -69,6 +72,9 @@ public class OAuth2WebSecurityConfig extends WebSecurityConfigurerAdapter {
|
||||||
.and()
|
.and()
|
||||||
.logout()
|
.logout()
|
||||||
.logoutSuccessHandler(oidcLogoutSuccessHandler())
|
.logoutSuccessHandler(oidcLogoutSuccessHandler())
|
||||||
|
.invalidateHttpSession(true)
|
||||||
|
.clearAuthentication(true)
|
||||||
|
.deleteCookies("JSESSIONID")
|
||||||
.and()
|
.and()
|
||||||
.oauth2Login(oauth2 -> oauth2.userInfoEndpoint(userInfo -> userInfo.oidcUserService(this.oidcUserService())));
|
.oauth2Login(oauth2 -> oauth2.userInfoEndpoint(userInfo -> userInfo.oidcUserService(this.oidcUserService())));
|
||||||
}
|
}
|
||||||
|
@ -95,7 +101,17 @@ public class OAuth2WebSecurityConfig extends WebSecurityConfigurerAdapter {
|
||||||
// NB:
|
// NB:
|
||||||
// The same URL must be configured server side:
|
// The same URL must be configured server side:
|
||||||
// Manage Clients > Edit Client > Other > Post-Logout Redirect
|
// Manage Clients > Edit Client > Other > Post-Logout Redirect
|
||||||
|
|
||||||
handler.setPostLogoutRedirectUri("{baseUrl}");
|
handler.setPostLogoutRedirectUri("{baseUrl}");
|
||||||
|
handler.setRedirectStrategy((req, res, url) -> {
|
||||||
|
if (StringUtils.isNotBlank(openaireLogoutUrl)) {
|
||||||
|
logger.info("Performing remote logout: " + openaireLogoutUrl);
|
||||||
|
res.sendRedirect(openaireLogoutUrl);
|
||||||
|
} else {
|
||||||
|
logger.info("Performing remote logout: " + url);
|
||||||
|
res.sendRedirect(url);
|
||||||
|
}
|
||||||
|
});
|
||||||
return handler;
|
return handler;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,20 +3,20 @@ server.port=8480
|
||||||
#spring.profiles.active=dev
|
#spring.profiles.active=dev
|
||||||
|
|
||||||
spring.main.banner-mode = off
|
spring.main.banner-mode = off
|
||||||
|
|
||||||
logging.level.root = INFO
|
logging.level.root = INFO
|
||||||
|
#logging.level.org.springframework = DEBUG
|
||||||
|
|
||||||
spring.datasource.url=jdbc:postgresql://localhost:5432/oa_organizations
|
spring.datasource.url=jdbc:postgresql://localhost:5432/oa_organizations
|
||||||
spring.datasource.username=oa_organizations
|
spring.datasource.username=oa_organizations
|
||||||
spring.datasource.password=
|
spring.datasource.password=
|
||||||
|
|
||||||
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect
|
|
||||||
|
|
||||||
# Hibernate ddl auto (create, create-drop, validate, update)
|
# Hibernate ddl auto (create, create-drop, validate, update)
|
||||||
spring.jpa.hibernate.ddl-auto = validate
|
spring.jpa.hibernate.ddl-auto = validate
|
||||||
|
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect
|
||||||
spring.jpa.properties.hibernate.hbm2dll.extra_physical_table_types = MATERIALIZED VIEW
|
spring.jpa.properties.hibernate.hbm2dll.extra_physical_table_types = MATERIALIZED VIEW
|
||||||
spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true
|
spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true
|
||||||
spring.jpa.open-in-view=true
|
spring.jpa.open-in-view=true
|
||||||
|
|
||||||
spring.jpa.properties.hibernate.show_sql=false
|
spring.jpa.properties.hibernate.show_sql=false
|
||||||
spring.jpa.properties.hibernate.use_sql_comments=false
|
spring.jpa.properties.hibernate.use_sql_comments=false
|
||||||
spring.jpa.properties.hibernate.format_sql=false
|
spring.jpa.properties.hibernate.format_sql=false
|
||||||
|
@ -36,3 +36,5 @@ spring.security.oauth2.client.provider.oidc.authorization-uri = http://localhost
|
||||||
spring.security.oauth2.client.provider.oidc.jwk-set-uri = http://localhost:8080/openid-connect-server-webapp/jwk
|
spring.security.oauth2.client.provider.oidc.jwk-set-uri = http://localhost:8080/openid-connect-server-webapp/jwk
|
||||||
spring.security.oauth2.client.provider.oidc.token-uri = http://localhost:8080/openid-connect-server-webapp/token
|
spring.security.oauth2.client.provider.oidc.token-uri = http://localhost:8080/openid-connect-server-webapp/token
|
||||||
spring.security.oauth2.client.provider.oidc.user-info-uri = http://localhost:8080/openid-connect-server-webapp/userinfo
|
spring.security.oauth2.client.provider.oidc.user-info-uri = http://localhost:8080/openid-connect-server-webapp/userinfo
|
||||||
|
|
||||||
|
openaire.override.logout.url =
|
||||||
|
|
Loading…
Reference in New Issue