org.sourceid.saml20.service
Interface SpSessionRegistry

All Known Implementing Classes:
SpSessionRegistryMapImpl, SpSessionRegistryMulticastImpl, SpSessionRegistryProxy

public interface SpSessionRegistry

Defines the methods needed by PingFederate to track assertions/sessions received from IdP partners and the associated local application information (SpHashableAuthnBeans). This service allows PingFederate to track the state needed to perform single logout.

Note that this interface is utilized only when you have PingFederate configured as an SP and one or more IdP connections configured to do single logout.

Author:
Brian Campbell

Method Summary
 SpHashableAuthnBean lookupAuthnBean(Session session)
          Retrieve the SpHashableAuthnBean that was registered with the given session.
 java.util.List<SpHashableAuthnBean> lookupAuthnBeans(java.lang.String pingFederateSessionId)
          Retrieve all the SpHashableAuthnBean associated with the PingFederate session id.
 Session lookupSessionReceived(SpHashableAuthnBean authnBean)
          Retrieve the session that was registered with the given SpHashableAuthnBean.
 java.util.List<Session> lookupSessions(java.lang.String partnerIdpEntityId, org.sourceid.saml20.xmlbinding.assertion.NameIDType nameIDType)
          Retrieve a list of sessions that have the given parameters.
 void registerSessionReceived(SpHashableAuthnBean authnBean, Session session)
          Register a session received from an IdP with the SpHashableAuthnBean that represents the application session created by the adapter.
 Session unregisterSessionReceived(SpHashableAuthnBean authnBean)
          Same as lookupSessionReceived but the session is also removed from the registry (usually because of logout).
 

Method Detail

registerSessionReceived

void registerSessionReceived(SpHashableAuthnBean authnBean,
                             Session session)
                             throws SessionRegistryException
Register a session received from an IdP with the SpHashableAuthnBean that represents the application session created by the adapter.

Parameters:
authnBean - the local application session information.
session - info from the assertion that was used to establish the local security context.
Throws:
SessionRegistryException - for any unexpected runtime problem that the implementation cannot handle.

lookupSessions

java.util.List<Session> lookupSessions(java.lang.String partnerIdpEntityId,
                                       org.sourceid.saml20.xmlbinding.assertion.NameIDType nameIDType)
                                       throws SessionRegistryException
Retrieve a list of sessions that have the given parameters.

Parameters:
partnerIdpEntityId - the entity id of the IdP that issued the session(s)/assertion(s).
nameIDType - the xml name id chunk from the assertion(s)/sessions(s)
Returns:
a list of Sessions that match the given criteria.
Throws:
SessionRegistryException - for any unexpected runtime problem that the implementation cannot handle.

lookupAuthnBean

SpHashableAuthnBean lookupAuthnBean(Session session)
                                    throws SessionRegistryException
Retrieve the SpHashableAuthnBean that was registered with the given session.

Parameters:
session - the session.
Returns:
the SpHashableAuthnBean that was registered with the given session.
Throws:
SessionRegistryException - for any unexpected runtime problem that the implementation cannot handle.

lookupSessionReceived

Session lookupSessionReceived(SpHashableAuthnBean authnBean)
                              throws SessionRegistryException
Retrieve the session that was registered with the given SpHashableAuthnBean.

Parameters:
authnBean - the SpHashableAuthnBean.
Returns:
the Session.
Throws:
SessionRegistryException - for any unexpected runtime problem that the implementation cannot handle.

unregisterSessionReceived

Session unregisterSessionReceived(SpHashableAuthnBean authnBean)
                                  throws SessionRegistryException
Same as lookupSessionReceived but the session is also removed from the registry (usually because of logout).

Parameters:
authnBean - the SpHashableAuthnBean.
Returns:
the Session.
Throws:
SessionRegistryException - for any unexpected runtime problem that the implementation cannot handle.

lookupAuthnBeans

java.util.List<SpHashableAuthnBean> lookupAuthnBeans(java.lang.String pingFederateSessionId)
                                                     throws SessionRegistryException
Retrieve all the SpHashableAuthnBean associated with the PingFederate session id.

Parameters:
pingFederateSessionId - PingFederate's HTTP session id.
Returns:
a list of SpHashableAuthnBeans
Throws:
SessionRegistryException - for any unexpected runtime problem that the implementation cannot handle.


Copyright 2007 Ping Identity Corp. All rights reserved.