com.sun.identity.federation.plugins
インタフェース FederationSPAdapter


public interface FederationSPAdapter

The interface FederationSPAdapter could be implemented to perform user specific processing during federation process on the Liberty Service Provider side.

A singleton instance of this FederationSPAdapter will be used during runtime, so make sure implementation of the federation processing methods (except initialize() method) are thread safe.


フィールドの概要
static String ENV_REALM
          Adapter's initialization parameter name for realm.
static int FEDERATION_FAILED
          Account federation failed.
static int FEDERATION_FAILED_ANON_AUTH_ACCOUNT_EXPIRED
          Account federation failed because anonymous user account is expired.
static int FEDERATION_FAILED_ANON_AUTH_USER_INACTIVE
          Account federation failed because anonymous user account is inactive.
static int FEDERATION_FAILED_ANON_AUTH_USER_LOCKED
          Account federation failed because anonymous user account is locked.
static int FEDERATION_FAILED_ANON_TOKEN_GENERATION
          Account federation failed because it failed to generate anonymous token.
static int FEDERATION_FAILED_SSO_TOKEN_GENERATION
          Account federation failed because it failed to generate user token.
static int FEDERATION_FAILED_WRITING_ACCOUNT_INFO
          Account federation failed because it failed to write account federation info.
static int INVALID_AUTHN_RESPONSE
          Response from IDP with Browser POST or LECP profile contains * non-Success status code.
static int INVALID_RESPONSE
          Response from IDP with Browser Artifact profile contains non-Success status code.
static int SSO_FAILED
          Single Sign On failed.
static int SSO_FAILED_AUTH_ACCOUNT_EXPIRED
          Single Sign On failed because the user account is expired.
static int SSO_FAILED_AUTH_USER_INACTIVE
          Single Sign On failed because the user account is inactive.
static int SSO_FAILED_AUTH_USER_LOCKED
          Single Sign On failed because the user account is locked.
static int SSO_FAILED_AUTO_FED
          Single Sign On failed because it failed to find auto federation user.
static int SSO_FAILED_FEDERATION_DOESNOT_EXIST
          Single Sign On failed because federation info does not exist at SP side.
static int SSO_FAILED_TOKEN_GENERATION
          Single Sign On failed because it failed to generate user token.
static int SUCCESS
          Federation or Single Sign on process succeed at SP side.
 
メソッドの概要
 void initialize(String hostedEntityID, Set initParams)
          Initializes the federation adapter, this method will only be executed once after creation of the adapter instance.
 void postRegisterNameIdentifierSuccess(String hostedEntityID, HttpServletRequest request, HttpServletResponse response, String userDN, FSNameRegistrationRequest regRequest, FSNameRegistrationResponse regResponse, String regProfile)
          Invokes after Register Name Identifier processing is successful
 void postSingleLogoutSuccess(String hostedEntityID, HttpServletRequest request, HttpServletResponse response, String userDN, FSLogoutNotification logoutRequest, FSLogoutResponse logoutResponse, String sloProfile)
          Invokes after single logout is successful completed, i.e. user token has been invalidated.
 boolean postSSOFederationFailure(String hostedEntityID, HttpServletRequest request, HttpServletResponse response, FSAuthnRequest authnRequest, FSAuthnResponse authnResponse, FSResponse samlResponse, int failureCode)
          Invokes after Single-Sign-On or Federation processing is failed.
 boolean postSSOFederationSuccess(String hostedEntityID, HttpServletRequest request, HttpServletResponse response, Object ssoToken, FSAuthnRequest authnRequest, FSAuthnResponse authnResponse, FSResponse samlResponse)
          Invokes after Single-Sign-On and Federation processing is successful.
 void postTerminationNotificationSuccess(String hostedEntityID, HttpServletRequest request, HttpServletResponse response, String userDN, FSFederationTerminationNotification notification, String termProfile)
          Invokes after the service provider successfully terminates federation with IDP.
 void preSingleLogoutProcess(String hostedEntityID, HttpServletRequest request, HttpServletResponse response, String userDN, FSLogoutNotification logoutRequest, FSLogoutResponse logoutResponse, String sloProfile)
          Invokes before single logout process started on FM side.
 void preSSOFederationProcess(String hostedEntityID, HttpServletRequest request, HttpServletResponse response, FSAuthnRequest authnRequest, FSAuthnResponse authnResponse, FSResponse samlResponse)
          Invokes when the FM received the Single-Sign-On and Federation response from the IDP, this is called before any processing started on SP side.
 void preSSOFederationRequest(String hostedEntityID, String idpEntityID, HttpServletRequest request, HttpServletResponse response, FSAuthnRequest authnRequest)
          Invokes before federation manager sends the Single-Sing-On and Federation request to IDP.
 

フィールドの詳細

SUCCESS

static final int SUCCESS
Federation or Single Sign on process succeed at SP side.

関連項目:
定数フィールド値

INVALID_AUTHN_RESPONSE

static final int INVALID_AUTHN_RESPONSE
Response from IDP with Browser POST or LECP profile contains * non-Success status code.

関連項目:
定数フィールド値

INVALID_RESPONSE

static final int INVALID_RESPONSE
Response from IDP with Browser Artifact profile contains non-Success status code.

関連項目:
定数フィールド値

FEDERATION_FAILED

static final int FEDERATION_FAILED
Account federation failed.

関連項目:
定数フィールド値

FEDERATION_FAILED_SSO_TOKEN_GENERATION

static final int FEDERATION_FAILED_SSO_TOKEN_GENERATION
Account federation failed because it failed to generate user token.

関連項目:
定数フィールド値

FEDERATION_FAILED_ANON_TOKEN_GENERATION

static final int FEDERATION_FAILED_ANON_TOKEN_GENERATION
Account federation failed because it failed to generate anonymous token.

関連項目:
定数フィールド値

FEDERATION_FAILED_ANON_AUTH_USER_INACTIVE

static final int FEDERATION_FAILED_ANON_AUTH_USER_INACTIVE
Account federation failed because anonymous user account is inactive.

関連項目:
定数フィールド値

FEDERATION_FAILED_ANON_AUTH_USER_LOCKED

static final int FEDERATION_FAILED_ANON_AUTH_USER_LOCKED
Account federation failed because anonymous user account is locked.

関連項目:
定数フィールド値

FEDERATION_FAILED_ANON_AUTH_ACCOUNT_EXPIRED

static final int FEDERATION_FAILED_ANON_AUTH_ACCOUNT_EXPIRED
Account federation failed because anonymous user account is expired.

関連項目:
定数フィールド値

FEDERATION_FAILED_WRITING_ACCOUNT_INFO

static final int FEDERATION_FAILED_WRITING_ACCOUNT_INFO
Account federation failed because it failed to write account federation info.

関連項目:
定数フィールド値

SSO_FAILED

static final int SSO_FAILED
Single Sign On failed.

関連項目:
定数フィールド値

SSO_FAILED_FEDERATION_DOESNOT_EXIST

static final int SSO_FAILED_FEDERATION_DOESNOT_EXIST
Single Sign On failed because federation info does not exist at SP side.

関連項目:
定数フィールド値

SSO_FAILED_AUTO_FED

static final int SSO_FAILED_AUTO_FED
Single Sign On failed because it failed to find auto federation user.

関連項目:
定数フィールド値

SSO_FAILED_AUTH_USER_INACTIVE

static final int SSO_FAILED_AUTH_USER_INACTIVE
Single Sign On failed because the user account is inactive.

関連項目:
定数フィールド値

SSO_FAILED_AUTH_USER_LOCKED

static final int SSO_FAILED_AUTH_USER_LOCKED
Single Sign On failed because the user account is locked.

関連項目:
定数フィールド値

SSO_FAILED_AUTH_ACCOUNT_EXPIRED

static final int SSO_FAILED_AUTH_ACCOUNT_EXPIRED
Single Sign On failed because the user account is expired.

関連項目:
定数フィールド値

SSO_FAILED_TOKEN_GENERATION

static final int SSO_FAILED_TOKEN_GENERATION
Single Sign On failed because it failed to generate user token.

関連項目:
定数フィールド値

ENV_REALM

static final String ENV_REALM
Adapter's initialization parameter name for realm.

関連項目:
定数フィールド値
メソッドの詳細

initialize

void initialize(String hostedEntityID,
                Set initParams)
Initializes the federation adapter, this method will only be executed once after creation of the adapter instance.

パラメータ:
hostedEntityID - entity ID for the hosted SP
initParams - initial set of parameters(such as REALM) configured in the service provider for this adapter.

preSSOFederationRequest

void preSSOFederationRequest(String hostedEntityID,
                             String idpEntityID,
                             HttpServletRequest request,
                             HttpServletResponse response,
                             FSAuthnRequest authnRequest)
Invokes before federation manager sends the Single-Sing-On and Federation request to IDP.

パラメータ:
hostedEntityID - entity ID for the hosted SP
idpEntityID - entity id for the IDP to which the request will be sent
request - servlet request
response - servlet response
authnRequest - the authentication request to be send to IDP

preSSOFederationProcess

void preSSOFederationProcess(String hostedEntityID,
                             HttpServletRequest request,
                             HttpServletResponse response,
                             FSAuthnRequest authnRequest,
                             FSAuthnResponse authnResponse,
                             FSResponse samlResponse)
                             throws FederationException
Invokes when the FM received the Single-Sign-On and Federation response from the IDP, this is called before any processing started on SP side.

パラメータ:
hostedEntityID - entity ID for the hosted SP
request - servlet request
response - servlet response
authnRequest - the original authentication request sent from SP
authnResponse - response from IDP if Browser POST or LECP profile is used for the request, value will be null if Browser Artifact profile is used.
samlResponse - response from IDP if Browser Artifact profile is used for the request, value will be null if Browser POST or LECP profile is used.
例外:
FederationException - if user want to fail the process.

postSSOFederationSuccess

boolean postSSOFederationSuccess(String hostedEntityID,
                                 HttpServletRequest request,
                                 HttpServletResponse response,
                                 Object ssoToken,
                                 FSAuthnRequest authnRequest,
                                 FSAuthnResponse authnResponse,
                                 FSResponse samlResponse)
                                 throws FederationException
Invokes after Single-Sign-On and Federation processing is successful.

パラメータ:
hostedEntityID - Entity ID for the hosted SP
request - servlet request
response - servlet response
ssoToken - user's SSO Token
authnRequest - the original authentication request sent from SP
authnResponse - response from IDP if Browser POST or LECP profile is used for the request, value will be null if Browser Artifact profile is used.
samlResponse - response from IDP if Browser Artifact profile is used for the request, value will be null if Browser POST or LECP profile is used.
戻り値:
true if browser redirection happened, false otherwise.
例外:
FederationException - if user want to fail the process.

postSSOFederationFailure

boolean postSSOFederationFailure(String hostedEntityID,
                                 HttpServletRequest request,
                                 HttpServletResponse response,
                                 FSAuthnRequest authnRequest,
                                 FSAuthnResponse authnResponse,
                                 FSResponse samlResponse,
                                 int failureCode)
Invokes after Single-Sign-On or Federation processing is failed.

パラメータ:
hostedEntityID - Entity ID for the hosted SP
request - servlet request
response - servlet response
authnRequest - the original authentication request sent from SP
authnResponse - response from IDP if Browser POST or LECP profile is used for the request, value will be null if Browser Artifact profile is used.
samlResponse - response from IDP if Browser Artifact profile is used * for the request, value will be null if Browser POST or LECP profile is used.
failureCode - an integer specifies the failure code. Possible failure codes are defined in this interface.
戻り値:
true if browser redirection happened, false otherwise.

postRegisterNameIdentifierSuccess

void postRegisterNameIdentifierSuccess(String hostedEntityID,
                                       HttpServletRequest request,
                                       HttpServletResponse response,
                                       String userDN,
                                       FSNameRegistrationRequest regRequest,
                                       FSNameRegistrationResponse regResponse,
                                       String regProfile)
Invokes after Register Name Identifier processing is successful

パラメータ:
hostedEntityID - Entity ID for the hosted SP
request - servlet request
response - servlet response
userDN - DN of the user with whom name identifier registration performed
regRequest - register name identifier request, value will be null if the request object is not available
regResponse - register name identifier response, value will be null if the response object is not available
regProfile - register name identifier profile used, one of following IFSConstants.NAME_REGISTRATION_SP_HTTP_PROFILE IFSConstants.NAME_REGISTRATION_SP_SOAP_PROFILE IFSConstants.NAME_REGISTRATION_IDP_HTTP_PROFILE IFSConstants.NAME_REGISTRATION_IDP_SOAP_PROFILE

postTerminationNotificationSuccess

void postTerminationNotificationSuccess(String hostedEntityID,
                                        HttpServletRequest request,
                                        HttpServletResponse response,
                                        String userDN,
                                        FSFederationTerminationNotification notification,
                                        String termProfile)
Invokes after the service provider successfully terminates federation with IDP.

パラメータ:
hostedEntityID - Entity ID for the hosted SP
request - servlet request
response - servlet response
userDN - DN of the user with whom name identifier registration performed
notification - federation termination notification message
termProfile - federation termination profile used, one of following IFSConstants.TERMINATION_SP_HTTP_PROFILE IFSConstants.TERMINATION_SP_SOAP_PROFILE IFSConstants.TERMINATION_IDP_HTTP_PROFILE IFSConstants.TERMINATION_IDP_SOAP_PROFILE

preSingleLogoutProcess

void preSingleLogoutProcess(String hostedEntityID,
                            HttpServletRequest request,
                            HttpServletResponse response,
                            String userDN,
                            FSLogoutNotification logoutRequest,
                            FSLogoutResponse logoutResponse,
                            String sloProfile)
Invokes before single logout process started on FM side. This method is called before the user token is invalidated on the service provider side.

パラメータ:
hostedEntityID - Entity ID for the hosted SP
request - servlet request
response - servlet response
userDN - user DN
logoutRequest - single logout request object
logoutResponse - single logout response, value will be null if the response object is not available
sloProfile - single logout profile used, one of following IFSConstants.LOGOUT_SP_REDIRECT_PROFILE IFSConstants.LOGOUT_SP_SOAP_PROFILE IFSConstants.LOGOUT_IDP_REDIRECT_PROFILE IFSConstants.LOGOUT_IDP_SOAP_PROFILE

postSingleLogoutSuccess

void postSingleLogoutSuccess(String hostedEntityID,
                             HttpServletRequest request,
                             HttpServletResponse response,
                             String userDN,
                             FSLogoutNotification logoutRequest,
                             FSLogoutResponse logoutResponse,
                             String sloProfile)
Invokes after single logout is successful completed, i.e. user token has been invalidated.

パラメータ:
hostedEntityID - Entity ID for the hosted SP
request - servlet request
response - servlet response
userDN - user DN
logoutRequest - single logout request, value will be null if the request object is not available
logoutResponse - single logout response, value will be null if the response object is not available
sloProfile - single logout profile used, one of following IFSConstants.LOGOUT_SP_HTTP_PROFILE IFSConstants.LOGOUT_SP_SOAP_PROFILE IFSConstants.LOGOUT_IDP_HTTP_PROFILE IFSConstants.LOGOUT_IDP_SOAP_PROFILE