Authentication class abstract

The object that can be used to trigger an authentication operation.

Usage example:

  class AuthenticatorSelectorImpl implements AuthenticatorSelector {
    @override
    void selectAuthenticator(
      AuthenticatorSelectionContext context,
      AuthenticatorSelectionHandler handler,
    ) {
      handler.aaid(aaid);
    }
  }

  class PinUserVerifierImpl implements PinUserVerifier {
    @override
    void verifyPin(
      PinUserVerificationContext context,
      PinUserVerificationHandler handler,
    ) {
      handler.verifyPin(pin);
    }
  }

  class PasswordUserVerifierImpl implements PasswordUserVerifier {
    @override
    void verifyPassword(
      PasswordUserVerificationContext context,
      PasswordUserVerificationHandler handler,
    ) {
      handler.verifyPassword(password);
    }
  }

  class BiometricUserVerifierImpl implements BiometricUserVerifier {
    @override
    void verifyBiometric(
      BiometricUserVerificationContext context,
      BiometricUserVerificationHandler handler,
    ) {
      handler.verifyBiometric();
    }
  }

  [...]
  Future<void> authenticate({
    required MobileAuthenticationClient client,
    required String username,
    SessionProvider? sessionProvider,
  }) async {
    await client.operations.authentication
      .username(username)
      .sessionProvider(sessionProvider)
      .authenticatorSelector(AuthenticatorSelectorImpl(...))
      .pinUserVerifier(PinUserVerifierImpl(...))
      .passwordUserVerifier(PasswordUserVerifierImpl(...))
      .biometricUserVerifier(BiometricUserVerifierImpl(...))
      .onSuccess((authorizationProvider) {
        // handle success
      })
      .onError((error) {
        // handle error
      })
      .execute();
  }
  [...]
Inheritance

Constructors

Authentication()

Properties

hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

authenticatorSelector(AuthenticatorSelector authenticatorSelector) → Authentication
Specifies the object that will take care of the selection of the authenticator to be used.
biometricUserVerifier(BiometricUserVerifier biometricUserVerifier) → Authentication
Specifies the object that will take care of the biometric user verification.
devicePasscodeUserVerifier(DevicePasscodeUserVerifier devicePasscodeUserVerifier) → Authentication
Specifies the object that will take care of the device passcode user verification.
execute() → Future<void>
Executes the operation asynchronously.
inherited
fingerprintUserVerifier(FingerprintUserVerifier fingerprintUserVerifier) → Authentication
Specifies the object that will take care of the fingerprint user verification.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onError(dynamic onError(AuthenticationError)) → Authentication
Specifies the object that will be invoked if the authentication failed.
onSuccess(dynamic onSuccess(AuthorizationProvider?)) → Authentication
Specifies the object that will be invoked if the authentication was successful.
passwordUserVerifier(PasswordUserVerifier passwordUserVerifier) → Authentication
Specifies the object that will take care of the password user verification.
pinUserVerifier(PinUserVerifier pinUserVerifier) → Authentication
Specifies the object that will take care of the PIN user verification.
requestHeaders(RequestHeaders requestHeaders) → Authentication
Specifies the additional request headers that must be included in the HTTP requests sent by the operation.
inherited
retryPolicyObtainingAuthorizationProvider(RetryPolicy retryPolicy) → Authentication
The retry policy to be used to obtain an AuthorizationProvider after the user authenticates successfully.
sessionProvider(SessionProvider sessionProvider) → Authentication
Specifies the session provider that must be used to authenticate.
toString() → String
A string representation of this object.
inherited
username(String username) → Authentication
Specifies the username that must be used to authenticate.

Operators

operator ==(Object other) → bool
The equality operator.
inherited