[keycloak-dev] backchannel logout for SAML SP
Stian Thorgersen
sthorger at redhat.com
Tue Sep 15 09:23:44 EDT 2015
Oh, I turned things around - I thought it was the SSO session id that was
missing, not the http session id. Ignore everything I've said up until now
;)
Maybe we could make the SSO Session ID --> HTTP Session ID map pluggable
then? By default it would use the mechanism Marek implemented, but then we
can support other means as well?
On 15 September 2015 at 15:14, Bill Burke <bburke at redhat.com> wrote:
> no. The session id sent with the logout request is the SSO session id.
> The client does not transmit its session id to the IdP.
>
> On 9/15/2015 9:04 AM, Stian Thorgersen wrote:
>
>> Isn't the http session id part of the standard backchannel log out?
>>
>> On 15 September 2015 at 14:58, Bill Burke <bburke at redhat.com
>> <mailto:bburke at redhat.com>> wrote:
>>
>> We can do anything we want on the server side, the problem is that
>> our client adapters, SAML and OIDC, should be able to work with
>> non-Keycloak IdPs.
>>
>> On 9/15/2015 7:25 AM, Stian Thorgersen wrote:
>>
>> Could we store the mapping on the Keycloak side? client-id + http
>> session id --> KC session id?
>>
>> On 14 September 2015 at 22:41, Bill Burke <bburke at redhat.com
>> <mailto:bburke at redhat.com>
>> <mailto:bburke at redhat.com <mailto:bburke at redhat.com>>> wrote:
>>
>>
>>
>> On 9/14/2015 4:20 PM, Marek Posolda wrote:
>> > On 14/09/15 21:46, Bill Burke wrote:
>> >> The SAML IdP is not required to send back that id. That
>> ID is just
>> >> the ID of the request.
>> > The SAML IdP doesn't need to send anything back. I meant
>> that
>> > HttpSessionID will be send in the ID of SAMLRequest from
>> SAML SP to
>> > auth-server . I don't know if there is any better
>> attribute/element of
>> > AuthnRequest, which can be used to transmit such "custom"
>> data.
>> >
>>
>> SAML logout requests to the SP client contain the principal
>> name and/or
>> possibly one *or more* SSO IDs (session indexes). New OIDC
>> spec will
>> work similarly.
>>
>> >>
>> >> A hack I'm thinking of is to create an HttpSession that
>> is shared by
>> >> everybody and store this SSO id/username -> to ->
>> HttpSession id map
>> >> there.
>> > That's good, we can avoid dependency on infinispan.
>>
>> Ugh, unfortunately, you can't provide our own session id
>> with Undertow's
>> or Jetty's sessionmanager interface. :( So no way to hack
>> this except
>> for Tomcat and JbossWeb.
>>
>> > But still, we will
>> > need the stuff like periodic cleaner thread, which will
>> remove expired
>> > items from this HttpSession map. And this solution
>> requires HttpSession
>> > replication if I understand correctly?
>> >
>>
>> Replication would be required, but all these servlet
>> containers contain
>> session lifecycle listener SPIs, so there is no need for
>> reaper threads.
>> But, can't do it anyways...
>>
>> > As of now, we don't require HttpSession replication for
>> OIDC. Qe support
>> > the deployments when the application is deployed on more
>> "cluster" nodes
>> > behind loadbalancer, but application cluster nodes don't
>> communicate
>> > with each other. In other words, there is no
>> "distributable" in web.xml
>> > . For this case, we have CLIENT_SESSION_HOST note, so the
>> OIDC
>> > backchannel request is sent to same cluster node from
>> which was
>> > code-to-token request sent earlier.
>> >
>>
>> Again, not something we can implement in a
>> standard/portable way.
>>
>> --
>> Bill Burke
>> JBoss, a division of Red Hat
>> http://bill.burkecentral.com
>> _______________________________________________
>> keycloak-dev mailing list
>> keycloak-dev at lists.jboss.org
>> <mailto:keycloak-dev at lists.jboss.org>
>> <mailto:keycloak-dev at lists.jboss.org
>> <mailto:keycloak-dev at lists.jboss.org>>
>> https://lists.jboss.org/mailman/listinfo/keycloak-dev
>>
>>
>>
>> --
>> Bill Burke
>> JBoss, a division of Red Hat
>> http://bill.burkecentral.com
>>
>>
>>
> --
> Bill Burke
> JBoss, a division of Red Hat
> http://bill.burkecentral.com
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/keycloak-dev/attachments/20150915/bd60c77c/attachment.html
More information about the keycloak-dev
mailing list