Support Article

SSO log off is not working

SA-5901

Summary



When using SSO with WebSEAL in Pega 7.1.7 environment when a user clicks log off from portal it logs back right back in.

Error Messages



None

Steps to Reproduce



1. Implement SSO using sso servlet.
2. Clock log off from Developer portal.
3. Application logs you back in.


Root Cause



In PRPC 7.1.7 there is a new application level setting on the definition tab, advanced section, called "Log off Redirection". There are two values for this:

Show Log off Screen
Redirect to Login Screen

The Activity Code-Security.Logoff sends the value of this setting to Code-Security.EndSession via the parameter "redTo". The activity Code-Security.EndSession then displays different HTML based on this parameter value:


RedirectToLoginScreen = Web-Login
< AnythingElse> = Web-Session-Return


When using "Show Log off Screen" this ends up calling "Web-Session-Return".

The HTML for Web-Session-Return has a meta refresh in it that takes the user back to the login screen:

< pega:choose>
<pega:when test="pxProcess.pxUrlEncryption == false && pxProcess.pxCsrfMitigation == false">
<pega:save name="servURL" ref="pxThread.pxReqURI"/>
</pega:when>
<pega:otherwise>
<pega:save name="servURL" append="/"/>
<pega:save name="servURL" appendRef="pxRequestor.pxReqContextName"/>
<pega:save name="servURL" append="/"/>
<pega:save name="servURL" appendRef="pxRequestor.pxReqServletNameReal"/>
</pega:otherwise>
</pega:choose>

<META http-equiv="refresh" content="0;URL=<pega:reference name="$save(servURL)" />">



Resolution



The Section rule "Web-Session-Return" is not marked as final so customizations can be done to it onsite.

When using SSO with WebSEAL or Siteminder simply remove the Meta refresh in the Web-Session-Return section.

 
Suggest Edit

Published January 31, 2016 - Updated October 8, 2020


0% found this useful

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.