package org.jboss.seam.security.external.saml.api; import java.util.Set; import org.jboss.seam.security.external.saml.idp.SamlExternalServiceProvider; /** * Session managed by a SAML Identity Provider (IDP). Multiple Service Providers * (SPs) can take part in the session. The session can be terminated as a whole, * for all parties involved, by initiating a SAML single logout (either by the * IDP or by a SP). * * @author Marcel Kolsteren */ public interface SamlIdpSession { /** * Returns the details of the principal, i.e. the logged in person * * @return the principal */ SamlPrincipal getPrincipal(); /** * Returns the list of service providers that participate in the session. The * list can be empty. In that case, the session is local to the identity * provider. * * @return the list */ Set<SamlExternalServiceProvider> getServiceProviders(); }