Interface AdapterSelector

  • All Superinterfaces:
    ConfigurablePlugin, DescribablePlugin, Plugin

    @Deprecated
    public interface AdapterSelector
    extends Plugin
    Deprecated.
    Please use the AuthenticationSelector interface instead.
    This interface defines the methods that the PingFederate server calls when performing IdP Adapter Selection.

    See ConfigurablePlugin for methods that need to be implemented to facilitate communication of configuration information with the PingFederate server.

    If your implementation of this method needs to operate asynchronously, it just needs to write to the HttpServletResponse as appropriate and commit it. Right after invoking this method the PingFederate server checks to see if the response has been committed. If the response has been committed, PingFederate saves the state it needs and discontinues processing for the current transaction. Processing of the transaction is continued when the user agent returns to the resumePath at the PingFederate server at which point the server invokes this method again. This series of events will be repeated until this method returns without committing the response. When that happens (which could be the first invocation) PingFederate will complete the protocol transaction processing with the return result of this method.

    Since:
    6.6
    • Field Detail

      • AUTHN_REQ_DOC_PARAM_NAME

        static final String AUTHN_REQ_DOC_PARAM_NAME
        Deprecated.
        Use this value as a key in the map extraParameters to access the AuthnRequestDocument of the SP-initiated SSO request.
        See Also:
        Constant Field Values
      • EXTRA_PARAMETER_NAME_INSTANCE_ID

        static final String EXTRA_PARAMETER_NAME_INSTANCE_ID
        Deprecated.
        The input parameter name for adapter selector instance id in extraParameters map. The value is a String.
        See Also:
        Constant Field Values
      • EXTRA_PARAMETER_NAME_ENTITY_ID

        static final String EXTRA_PARAMETER_NAME_ENTITY_ID
        Deprecated.
        The parameter name in the extraParameters map for the entity id of the SP connection, if applicable.
        See Also:
        Constant Field Values
      • EXTRA_PARAMETER_NAME_AUTHN_POLICY

        static final String EXTRA_PARAMETER_NAME_AUTHN_POLICY
        Deprecated.
        The parameter name in the extraParameters map for the AuthnPolicy
        See Also:
        Constant Field Values
      • EXTRA_PARAM_NAME_SCOPE

        static final String EXTRA_PARAM_NAME_SCOPE
        Deprecated.
        The parameter name in the extraParameters map for the OAuth scope.
        See Also:
        Constant Field Values
      • EXTRA_PARAM_NAME_ORIGINAL_REQUEST_URI

        static final String EXTRA_PARAM_NAME_ORIGINAL_REQUEST_URI
        Deprecated.
        The parameter name in the extraParameters map for the original request URI, before redirection(during a async call).
        See Also:
        Constant Field Values
    • Method Detail

      • selectContext

        AdapterSelectorContext selectContext​(javax.servlet.http.HttpServletRequest req,
                                             javax.servlet.http.HttpServletResponse resp,
                                             Map<String,​String> mappedAdapterIdsNames,
                                             Map<String,​Object> extraParameters,
                                             String resumePath)
        Deprecated.
        This is the method that the PingFederate server will invoke during Adapter Selection.
        Parameters:
        req - the HttpServletRequest can be used to read cookies, parameters, headers, etc. It can also be used to find out more about the request like the full URL the request was made to. Accessing the HttpSession from the request is not recommended and doing so is deprecated. Use SessionStateSupport as an alternative.
        resp - the HttpServletResponse.
        mappedAdapterIdsNames - the map of name value pairs containing the mapped adapter information for the respective connection.
        extraParameters - the map of extra object data used for facilitating specific adapter selection implementations. The values found in this collection are stored in keys AUTHN_REQ_DOC_PARAM_NAME and AdapterSelector.EXTRA_PARAMETER_*.
        resumePath - the relative URL that the user agent needs to return to, if the implementation of this method invocation needs to operate asynchronously. If this method operates synchronously, this parameter can be ignored. The resumePath is the full path portion of the URL - everything after hostname and port. If the hostname, port, or protocol are needed, they can be derived using the HttpServletRequest.
        Returns:
        AdapterSelectorContext the resulting context of the Adapter selection process. The result type must be set to either AdapterSelectorContext.ResultType.CONTEXT or AdapterSelectorContext.ResultType.ADAPTER_ID depending on the desired behavior of the Adapter Selector. If AdapterSelectorContext.ResultType.CONTEXT is returned, the respective mapping will be evaluated to arrive at the adapter instance to be invoked. If AdapterSelectorContext.ResultType.ADAPTER_ID is returned, the respective adapter instance will be invoked.
      • callback

        void callback​(javax.servlet.http.HttpServletRequest req,
                      javax.servlet.http.HttpServletResponse resp,
                      Map authnIdentifiers,
                      String adapterInstanceId,
                      AdapterSelectorContext adapterSelectorContext)
        Deprecated.
        This is the method that the PingFederate server will invoke after the selected adapter completes the lookupAuthN(...) method. The callback method can be used to update resulting attributes from adapter invocation, set cookies, etc. Writing content to the HttpServletResponse is not supported, doing so will result in unexpected behavior.
        Parameters:
        req - the HttpServletRequest can be used to read cookies, parameters, headers, etc. Accessing the HttpSession from the request is not recommended and doing so is deprecated. Use SessionStateSupport as an alternative.
        resp - the HttpServletResponse can be used to set cookies before continuing the SSO request.
        authnIdentifiers - the map of attribute values resulting from the completion of the lookupAuthN(...) method of the selected adapter.
        adapterInstanceId - the ID of the selected adapter.
        adapterSelectorContext - the resulting context of the Adapter Selection selectContext(...) method.
        See Also:
        IdpAuthenticationAdapterV2, IdpAuthenticationAdapter