Backchannel Logout

The oidc_backchannel_logout feature supports, as defined in the RFC, logging out on all RPs as a consequence of logging out on the OP, by allowing RPs to register a “backchannel logout URL” in the OP, and having the OP make an HTTP request to it after a successful logout.

It also supports session identification via ID token SID claim (which can also be disabled).

How to enable it

The way to enable it is as follows:

plugin :rodauth do
  enable :oidc_backchannel_logout
end

When enabled, the openid discovery endpoint will expose support for bakchannel logout; if using the oidc_dynamic_client_registration, the parameters definedd in the RFC will also be supported.

Caveats

By default, backchannel requests will be sequentially performed on each logged-in RP using net-http. If you’d like to somehow parallelize it or use a different HTTP client, you must override the perform_logout_requests auth method.

Home