destroying user IdP session as part of profile intercept flow

Scott Koranda skoranda at gmail.com
Thu Feb 4 13:16:25 EST 2016


> > What am I missing?
> 
> I got crossed up by the earlier conversation...by the time
> an intercept there runs, the result has already been saved
> to the session. So you would have to update the session via
> the SessionContext and remove it from there, not the
> SubjectContext.

Even easier:

<action-state id="RemoveAuthenticationResult">
 <on-entry>
     <evaluate expression="opensamlProfileRequestContext.getSubcontext(T(net.shibboleth.idp.session.context.SessionContext))" result="flowScope.sessionContext"/>
     <evaluate expression="sessionContext.getIdPSession()" result="flowScope.idpSession"/>
     <evaluate expression="idpSession.getAuthenticationResult('authn/Myflow')" result="flowScope.authenticationResult"/>
     <evaluate expression="idpSession.removeAuthenticationResult(authenticationResult)"/>
 </on-entry>

 <evaluate expression="'proceed'"/>
 <transition on="proceed" to="MyEndState"/>
</action-state>

This works as expected.

Thanks,

Scott K


More information about the users mailing list