Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Session termination in single logout using SAML

Let us say we have a user who is accessing three different services using Single sign-on. On clicking on Logout the session with current Sp can be identified and terminated.

Here on, it is the responsibility of IdP to log the user out from the other two services. My question is how the sessions with the remaining two services will be obtained and terminated?

like image 432
Shurmajee Avatar asked May 27 '26 23:05

Shurmajee


2 Answers

The Idp send the other two SPs a LogoutRequest with the sessionIndex of the user to be logged out. The SPs are then responsible to terminate the session on their side.

like image 148
Stefan Rasmusson Avatar answered May 30 '26 11:05

Stefan Rasmusson


During SSO, IDP sends SAML Assertion to SP that contains AuthnStatement. One of the attributes of this AuthnStatement is SessionIndex that identifies the session of the user with the IDP.

During SLO, SP sends SAML Logout Request that contains SessionIndex that identifies the session of the user (with the IDP) that the IDP must terminate. IDP then retrieves the list of SPs that participate in the current user session. IDP sends SAML Logout Request to each of these SPs.

In order to do this, IDP needs to keep track of the SPs that participate in the current user session (i.e., the SPs that received SAML Assertion issued by the IDP during the current user session).

like image 25
fajarkoe Avatar answered May 30 '26 13:05

fajarkoe



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!