-
Notifications
You must be signed in to change notification settings - Fork 154
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
Back channel logout #246
base: develop
Are you sure you want to change the base?
Back channel logout #246
Conversation
…ranch was developed against 3.8.0; as this one is against dev)
Fixed all linter bugs in Travis CI, however don't know how to fix the 'Minimum Requirements' and 'Bleeding Edge' ones - but I'm wondering how those issues are related to my changes |
@upachler if you are using PHP functions that are only available in a newer PHP version then that is the problem. The checks should list where the problem is, looking. |
@upachler I checked the failed build and it's actually failing on a dependency supposedly. I'm going to have to run another |
@upachler I'm a bit concerned about this functionality being centered around Keycloak. The core functionality should be generalized with hooks provided for specific IDP customization. I'd like to see this changed to a core back channel logout that is according to spec. Something like the custom plugin setting can be added via the current hooks provided and then used in the hooks as needed in the generic back channel logout hooks. |
@timnolte I appreciate the desire to decouple the Keycloak specifics from the rest of the plugin, even more so because with the upcoming Keycloak 12.0.0, this feature is obsolete as Keycloak will support standard OIDC BCL (however, the newest commercial RH SSO will be based on a pre v12 Keycloak for quite a while longer, which why I developed Keycloak BCL support in the first place). However, the downside with new hooks is that they need to be supported in the future, which would weigh against the disadvantages of having keycloak specific functionality in the OIDC plugin. Those are the major points where I see we'd need hooks for:
|
All Submissions:
Changes proposed in this Pull Request:
Aims to implement OIDC Backchannel Logout and Keycloak legacy BCL feature.
Screnario:
This change implements the last point in the screnario; previously, the user remained logged in as long as the WP session itself didn't time out (which is quite long compared to an access_token lifetime in typical OIDC configurations). Not being logged out is particularly strange for users who, in an SSO context, log out of a running OP session and then log in with a different user. If WP does not recognize the logout, the WP session will keep running with the original user, which breaks the seamlessness promised in SSO contexts.
Closes #205 .
How to test the changes in this Pull Request:
https://my-wordpress-site.com/wp-admin/admin-ajax.php?action=openid-connect-backchannel-logout
as BCL URL in WP's client confighttps://my-wordpress-site.com/
as the Admin URL in WP's client configBCL logouts are logged via the logging feature.
Other information:
-> Yes, in the Keycloak Legacy configuration, which is my main use case. I have no access to a BCL compliant OIDC provider
Changelog entry