Interface IPluginAuthenticationLogic

  • All Superinterfaces:
    IFCPlugin, INamedUiElement, INameProviding, ITransferable, Serializable

    public interface IPluginAuthenticationLogic
    extends IFCPlugin
    Common interface for plugins that provide a custom authentication logic. Custom authentication logic always consists of a login logic and a callback logic. The authentication logic also needs to provide an authentication target key.

    The authentication target key identifies the authentication logic in authentication requests i.e. .../formcycle/auth/login?xfc-auth=...&xfc-auth-target=my-target....

    The login logic determines how to start an authentication request. For example the custom login logic might store certain parameters in the session for later use and then start the authentication request by redirecting to the IDP. If no login logic is given then the default login logic for generic authentication request will be performed. This will start the authentication process for any active authenticator (IAuthenticator), which usually means redirecting to the IDP.

    The callback logic determines how to handle the response from an IDP in an authentication request. For example a custom authentication logic might perform the callback logic which returns a user profile (default callback logic) and then save that user profile in a session. If no callback logic is given then the default callback logic will be performed, which will take the IDP response and return the user profile if possible.
    Since:
    7.2.0
    Author:
    XIMA Media GmbH
    • Method Detail

      • getAuthenticationTargetKey

        @NotBlank
        @NotBlank String getAuthenticationTargetKey()
        The authentication target key identifies this authentication logic in authentication requests i.e. .../formcycle/auth/login?xfc-auth=...&xfc-auth-target=my-target....
        Returns:
        the authentication target key of this authentication logic.
      • getLoginLogic

        @Nullable
        IPluginLoginLogic getLoginLogic()
        The login logic determines how to start an authentication request. For example the custom login logic might store certain parameters in the session for later use and then start the authentication request by redirecting to the IDP. If no login logic is given then the default login logic for generic authentication request will be performed. This will start the authentication process for any active authenticator (IAuthenticator), which usually means redirecting to the IDP.
        Returns:
        the custom login logic of the plugin. May be null to execute the default login logic.
      • getCallbackLogic

        @Nullable
        IPluginCallbackLogic getCallbackLogic()
        The callback logic determines how to handle the response from an IDP in an authentication request. For example a custom authentication logic might perform the callback logic which returns a user profile (default callback logic) and then save that user profile in a session. If no callback logic is given then the default callback logic will be performed, which will take the IDP response and return the user profile if possible.
        Returns:
        the custom callback logic of the plugin. May be null to execute the default callback logic.