Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix Keycloak logout parameters #378

Open
anncatton opened this issue Mar 31, 2023 · 0 comments
Open

Fix Keycloak logout parameters #378

anncatton opened this issue Mar 31, 2023 · 0 comments

Comments

@anncatton
Copy link
Contributor

When Keycloak was upgraded to v20, the redirect_uri was deprecated, and new parameters are required to align with the OpenID spec, as outlined here: https://www.keycloak.org/docs/latest/upgrading/#openid-connect-logout

Logging out now gives an invalid_parameter error, and client cannot redirect back to the portal ui.

There are 2 options:

  1. get rid of the Keycloak logout portion altogether, and treat this like our other Ego "logouts" - remove the JWT on the client, and disregard the keycloak session. This means logging back in to the portal would be similar to using a Google login, with no need to re-authenticate with a password because the session is maintained.
  2. keep the true Keycloak logout, and modify the portal logout request to use new parameters client_id and post_logout_redirect_uri that v20 requires. This flow would require the user to confirm logout on Keycloak, and then would redirect back to the client. Ego as it is right now does not store the id_token we would need for a confirmation-less logout (using the param id_token_hint), and will require work to make it compliant in this respect.

**Include on this ticket:

  • Ensure all urls are created using url-join, to avoid any invalid string composition.
@leoraba leoraba assigned leoraba and unassigned leoraba Jul 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants