Interface FedletAdapter

  • All Superinterfaces:
    InitializablePlugin, SAMLPlugin
    All Known Implementing Classes:
    FedletAdapter

    @EvolvingAll
    public interface FedletAdapter
    extends InitializablePlugin
    The FedletAdapterPlugin abstract class provides methods that could be extended to perform user specific logics during SAMLv2 protocol processing on the Service Provider side. The implementation class could be configured on a per service provider basis in the extended metadata configuration.

    A singleton instance of this FedletAdapterPlugin class will be used per Service Provider during runtime, so make sure implementation of the methods are thread safe.

    • Method Detail

      • doFedletSLO

        default boolean doFedletSLO​(javax.servlet.http.HttpServletRequest request,
                                    javax.servlet.http.HttpServletResponse response,
                                    LogoutRequest logoutReq,
                                    String hostedEntityID,
                                    String idpEntityID,
                                    List siList,
                                    String nameIDValue,
                                    String binding)
                             throws SAML2Exception
        Invokes after Fedlet receives SLO request from IDP. It does the work of logout the user.
        Parameters:
        request - servlet request
        response - servlet response
        hostedEntityID - entity ID for the fedlet
        idpEntityID - entity id for the IDP to which the request is received from.
        siList - List of SessionIndex whose session to be logged out
        nameIDValue - nameID value whose session to be logged out
        binding - Single Logout binding used, one of following values: SAML2Constants.SOAP, SAML2Constants.HTTP_POST, SAML2Constants.HTTP_REDIRECT
        Returns:
        true if user is logged out successfully; false otherwise.
        Throws:
        SAML2Exception - if user want to fail the process.
      • onFedletSLOSuccess

        default void onFedletSLOSuccess​(javax.servlet.http.HttpServletRequest request,
                                        javax.servlet.http.HttpServletResponse response,
                                        LogoutRequest logoutReq,
                                        LogoutResponse logoutRes,
                                        String hostedEntityID,
                                        String idpEntityID,
                                        String binding)
                                 throws SAML2Exception
        Invokes after Fedlet receives SLO response from IDP and the SLO status is success.
        Parameters:
        request - servlet request
        response - servlet response
        logoutReq - SAML2 LogoutRequest object
        logoutRes - SAML2 LogoutResponse object
        hostedEntityID - entity ID for the fedlet
        idpEntityID - entity id for the IDP to which the logout response is received from.
        binding - Single Logout binding used, one of following values: SAML2Constants.SOAP, SAML2Constants.HTTP_POST, SAML2Constants.HTTP_REDIRECT
        Throws:
        SAML2Exception - if user want to fail the process.
      • onFedletSLOFailure

        default void onFedletSLOFailure​(javax.servlet.http.HttpServletRequest request,
                                        javax.servlet.http.HttpServletResponse response,
                                        LogoutRequest logoutReq,
                                        LogoutResponse logoutRes,
                                        String hostedEntityID,
                                        String idpEntityID,
                                        String binding)
                                 throws SAML2Exception
        Invokes after Fedlet receives SLO response from IDP and the SLO status is not success.
        Parameters:
        request - servlet request
        response - servlet response
        logoutReq - SAML2 LogoutRequest object
        logoutRes - SAML2 LogoutResponse object
        hostedEntityID - entity ID for the fedlet
        idpEntityID - entity id for the IDP to which the logout response is received from.
        binding - Single Logout binding used, one of following values: SAML2Constants.SOAP, SAML2Constants.HTTP_POST, SAML2Constants.HTTP_REDIRECT
        Throws:
        SAML2Exception - if user want to fail the process.