Interface Configuration


public interface Configuration
The MobileAuthenticationClient configuration.

The Configuration is used to build and initialize the MobileAuthenticationClient.

See Also:
  • Method Details

    • builder

      @NonNull static Configuration.Builder builder()
      Returns a new Configuration.Builder.
      Returns:
      a new Configuration.Builder
    • authCloudBuilder

      @NonNull static Configuration.AuthCloudBuilder authCloudBuilder()
      Returns a new Configuration.AuthCloudBuilder. This is a simpler version of Configuration.Builder that can only be used when your application interacts with the Nevis Authentication Cloud.

      If you are fine with the default network parameters of the builder, you just need to provide the hostname to build a Configuration object:

           Configuration configuration = Configuration.authCloudBuilder()
                                      .hostname(hostname)
                                      .build();
       
      Returns:
      a new Configuration.CloudBuilder
    • admin4PatternBuilder

      @NonNull static Configuration.Admin4PatternBuilder admin4PatternBuilder()
      Returns a new Configuration.Admin4PatternBuilder. This is a simpler version of Configuration.Builder that can only be used when your application interacts with the Nevis Identity Suite configured with default Nevis Admin 4 pattern.

      If you are fine with the default network parameters of the builder, you just need to provide the hostname to build a Configuration object:

           Configuration configuration = Configuration.admin4PatternBuilder()
                                      .hostname(hostname)
                                      .build();
       
      Returns:
      a new Configuration.Admin4PatternBuilder
    • baseUrl

      @NonNull URI baseUrl()
      The default base URL for the HTTP endpoints the SDK must interact with.

      If no URL is provided through the Registration.serverUrl(java.net.URI) method, all the authenticators will be registered against the server associate with this URL.

      Returns:
      the base URL.
    • registrationRequestPath

      @NonNull String registrationRequestPath()
      The registration request URL path used to send the FIDO UAF registration GetUafRequest.

      The registration request URL is the result of combining the baseUrl() and this path.

      Returns:
      the registration request path
    • registrationResponsePath

      @NonNull String registrationResponsePath()
      The registration response URL path used to send the final FIDO UAF registration response.

      The registration response URL is the result of combining the baseUrl() and this path.

      Returns:
      registration response path
    • authenticationRequestPath

      @NonNull String authenticationRequestPath()
      The authentication request URL path used to send the FIDO UAF authentication GetUafRequest.

      The authentication request URL is the result of combining the baseUrl() and this path.

      Returns:
      the authentication request path
    • authenticationResponsePath

      @NonNull String authenticationResponsePath()
      The authentication response URL path used to send the final FIDO UAF authentication response.

      The authentication response URL is the result of combining the baseUrl() and this path.

      Returns:
      the authentication response path
    • dispatchTargetResourcePath

      @NonNull String dispatchTargetResourcePath()
      The dispatch target resource URL path.

      The dispatch target resource URL is the result of combining the baseUrl() and this path.

      Returns:
      the dispatch target resource path
    • deregistrationRequestPath

      @NonNull String deregistrationRequestPath()
      Returns the URL path used to obtain the FIDO UAF deregistration request.

      The deregistration request URL is the result of combining the baseUrl() and this path.

      Returns:
      the deregistration request path
    • deviceResourcePath

      @NonNull default String deviceResourcePath()
      Returns the device service URL path.

      The device service request URL is the result of combining the baseUrl() and this path.

      Returns:
      the device resource path
    • networkTimeoutInSeconds

      long networkTimeoutInSeconds()
      Time interval for network calls in seconds. Any network request that takes longer than this value, will result in a timeout.
      Returns:
      the time interval for network requests
    • userInteractionTimeoutInSeconds

      long userInteractionTimeoutInSeconds()
      The user interaction timeout in seconds. This is the maximum time that the SDK will wait to obtain a result when AccountSelector.selectAccount(AccountSelectionContext, AccountSelectionHandler), AuthenticatorSelector.selectAuthenticator(AuthenticatorSelectionContext, AuthenticatorSelectionHandler), PinUserVerifier.verifyPin(PinUserVerificationContext, PinUserVerificationHandler), FingerprintUserVerifier.verifyFingerprint(FingerprintUserVerificationContext, FingerprintUserVerificationHandler), or BiometricUserVerifier.verifyBiometric(BiometricUserVerificationContext, BiometricUserVerificationHandler) are invoked (i.e. the maximum time to wait before any of the methods of the provided consumer in any of those methods is invoked).

      If the timeout occurs, then the operation delegate failure method (Registration.onError(Consumer), OutOfBandRegistration.onError(Consumer), Authentication.onError(Consumer) or OutOfBandAuthentication.onError(Consumer), depending on the operation being executed) will be invoked. The provided exception will contain an FidoErrorCode.USER_NOT_RESPONSIVE error code.

      Returns:
      the timeout for user interaction
    • appAttestation

      @NonNull default Optional<AppAttestation> appAttestation()
      The configuration related to application attestation. If the backend (nevisFIDO) requires application attestation through its policy, you must provide this information, so that the mobile SDK can send the required application attestation information.

      This information is not needed if your backend does not require application attestation.

      Returns:
      the application attestation configuration. Empty Optional if no application attestation is required.