I am using UAA with SAML authorization and the SLO functionality does not seem to work as expected.
I set all the expected application properties for SAML:
mgmtp.a12.uaa.authentication.cors.enabled=false
spring.security.saml2.relyingparty.registration.uaa.identityprovider.metadata-uri=http://localhost:7073/auth/realms/BupRealm/protocol/saml/descriptor
spring.security.saml2.relyingparty.registration.uaa.entity-id=urn:com:mgm:BupServices
spring.security.saml2.relyingparty.registration.uaa.decryption.credentials[0].private-key-location=classpath:saml/sp_enc.private.encrypted.pem
spring.security.saml2.relyingparty.registration.uaa.decryption.credentials[0].certificate-location=classpath:saml/saml_sp_enc_public.pem
spring.security.saml2.relyingparty.registration.uaa.signing.credentials[0].private-key-location=classpath:saml/sp_sgn.private.encrypted.pem
spring.security.saml2.relyingparty.registration.uaa.signing.credentials[0].certificate-location=classpath:saml/saml_sp_sig_public.pem
Then I configure in keycloak the urn:com:mgm:BupServices client for SLO:

The login is working, this means that the configuration of the BupServices client is correct, but when I am logging out from one front end app, it does not automatically log me out from the other front end app.
Also after logging out the user session is still active in keycloak:
The client configuration is:
export const uaaClientConfiguration: UaaClientConfiguration = {
serverURL: serverBaseUrl,
serverConnector: createServerConnector(serverBaseUrl),
additionalResponseFilter: [new ResponseFilter429()],
automaticallyLogin: true,
offlineSelfConfigure: {
uaaBaseUrl: "",
tokens: [
{
authorizationHeaderName: "Authorization",
generatedTokenExpirationHeaderName: "id_token_expiration",
generatedTokenHeaderName: "id_token",
tokenType: "UAABEARER",
allowCredentials: "include"
}
],
saml: {
loginRelativeUrl: `${serverBaseUrl}/saml2/authenticate/uaa?uaa_success=${encodeURIComponent(
decodeURIComponent(window.location.toString())
)}&uaa_failure=${encodeURIComponent(decodeURIComponent(window.location.toString()))}`,
logoutMethod: "POST",
logoutRelativeUrl: "user/logout",
tokenType: "UAABEARER"
}
}
};
And when I click on logout the following method is called:
UaaClient.getSamlClient().logout();
Am I doing anything wrong? I followed the documentation according to:
https://docs.geta12.com/docs/?release=2022.06#content:asciidoc,product:UAA,artifact:uaa-documentation-src,scene:UAA,anchor:redirect-configuration


