AbstractAbstractrequestSpecifies the additional request headers that must be included in the HTTP requests sent by the operation.
the HTTP headers.
an HttpOperation object.
AbstractexecuteExecutes the operation asynchronously.
AbstractdeviceSpecifies the device information to be used.
The DeviceInformation is required only if you require support for encrypted out-of-band payloads or push notifications. If a DeviceInformation was already provided in an existing registration, the provided value will be ignored.
the device information.
an OutOfBandRegistration object.
AbstractallowSpecifies whether Class 2 (formerly weak) biometric sensors are allowed if the biometric authenticator is selected.
IMPORTANT
This method is Android specific and will be ignored on iOS platform.
By default, the SDK will only allow to use Class 3 (formerly strong) sensors. Using Class 2 sensors is less secure and discouraged. When a Class 2 sensor is used, the FIDO UAF keys are not protected by the operating system by requiring user authentication, nor can they be invalidated when biometrics change (see invalidateOnNewOsBiometrics).
If the SDK detects that only Class 3 (strong) biometric sensors are available in the mobile device, even if Class 2 sensors are allowed, the FIDO UAF credentials will be protected by the operating system by requiring user authentication.
However, in some cases it may be acceptable for the sake of end-user convenience. Allowing Class 2 sensors will enable for instance the use of face recognition in some Samsung devices.
specifies whether Class 2 biometric sensors are allowed if the biometric authenticator is selected.
an OutOfBandRegistration object.
AbstractallowSpecifies whether the SDK should try to store the FIDO UAF keys in StrongBox.
IMPORTANT
This method is Android specific and will be ignored on iOS platform.
We recommend to use StrongBox, but we have seen incompatibility with some
devices during registration. So, if you want to maximize the number of
devices that are compatible with your application, you may consider opting
out of using StrongBox by providing false to this method.
See here
for details.
Note also that with some devices creating a key in StrongBox can take more than 10 seconds, so registration is usually slower when StrongBox is used.
If not specified, the SDK will try to store FIDO UAF credentials in StrongBox if available.
specifies whether the SDK should try to store the FIDO UAF keys in StrongBox.
an OutOfBandRegistration object.
AbstractallowSpecifies whether the OS device passcode can be used as fallback during biometric authentication.
If not specified, the device passcode cannot be used as fallback.
This setting and invalidateOnNewOsBiometrics cannot be enabled together.
indicates whether the device passcode can be used as fallback when using the biometric authenticator.
an OutOfBandRegistration object.
AbstractinvalidateSpecifies whether the authenticator must be invalidated if the user changes biometric credentials in the OS settings.
If the authenticator has been invalidated, and you try to authenticate with it, an error with code FidoErrorCodeType.KeyDisappearedPermanently will be returned by the authentication operation.
This setting only applies to biometric Aaid.BIOMETRIC and fingerprint Aaid.FINGERPRINT authenticators.
By setting this parameter to true, you increase the security but there is a loss of
convenience: changing biometric credentials in the OS settings does not necessarily imply
that there is a security risk, but if the end-user does it, a new registration will be required,
because an invalidated authenticator cannot be recovered.
Note that on Android if the device supports Class 2 sensors, and if Class 2 sensors are allowed (see allowClass2AndroidSensors), the value set in this method will be ignored and the authenticator will not be invalidated if the user changes biometric credentials in the OS settings.
If not specified, the authenticator will be invalidated when the user changes biometric credentials in the OS settings.
This setting and allowDevicePasscodeAsFallback cannot be enabled together.
IMPORTANT
On Android removing biometric credentials does not invalidate other existing credentials as
opposed to iOS where removal also leads to invalidation.
indicates whether changing biometric credentials in the OS should invalidate this authenticator.
an OutOfBandRegistration object.
AbstractauthenticatorSpecifies the object that will take care of the selection of the authenticator to be used.
IMPORTANT
Providing the authenticator selector is required.
an OutOfBandRegistration object.
AbstractpinSpecifies the object that will take care of enrolling the PIN of the authenticator.
It must be provided only if a PIN authenticator must be registered.
IMPORTANT
Providing at least one of the PinEnroller, PasswordEnroller,
BiometricUserVerifier, DevicePasscodeUserVerifier or FingerprintUserVerifier
is required.
the PinEnroller.
an OutOfBandRegistration object.
AbstractpasswordSpecifies the object that will take care of enrolling the password of the authenticator.
It must be provided only if a password authenticator must be registered.
IMPORTANT
Providing at least one of the PinEnroller, PasswordEnroller,
BiometricUserVerifier, DevicePasscodeUserVerifier or FingerprintUserVerifier
is required.
the PasswordEnroller.
an OutOfBandRegistration object.
AbstractbiometricSpecifies the object that will take care of the biometric user verification.
It must be provided only if a biometric authenticator must be registered.
IMPORTANT
Providing at least one of the PinEnroller, PasswordEnroller,
BiometricUserVerifier, DevicePasscodeUserVerifier or FingerprintUserVerifier
is required.
an OutOfBandRegistration object.
AbstractdeviceSpecifies the object that will take care of the device passcode user verification.
It must be provided only if a device passcode authenticator must be registered.
IMPORTANT
Providing at least one of the PinEnroller, PasswordEnroller,
BiometricUserVerifier, DevicePasscodeUserVerifier or FingerprintUserVerifier
is required.
an OutOfBandRegistration object.
AbstractfingerprintSpecifies the object that will take care of the fingerprint user verification.
It must be provided only if a fingerprint authenticator must be registered.
IMPORTANT
Providing at least one of the PinEnroller, PasswordEnroller,
BiometricUserVerifier, DevicePasscodeUserVerifier or FingerprintUserVerifier
is required.
an OutOfBandRegistration object.
AbstractonSpecifies the object that will be invoked if the registration completed successfully.
IMPORTANT
Providing the onSuccess is required.
the callback which is invoked on successful registration.
an OutOfBandRegistration object.
AbstractonSpecifies the object that will be invoked if the registration failed.
IMPORTANT
Providing the onError is required.
the callback which receives an OperationError.
an OutOfBandRegistration object.
The operation handling an out-of-band registration. This is the object returned by the SDK, when an OutOfBandPayload was processed and the OutOfBandPayload corresponds to a registration operation.
Usage example:
The biometric, device passcode and fingerprint authenticators are enrolled at the OS level. That is why, if one of them must be registered, the user must authenticate through BiometricUserVerifier, DevicePasscodeUserVerifier or FingerprintUserVerifier. In the case of the PIN and password, the credentials are enrolled during registration, so no authentication is needed.
See
OutOfBandOperation.onRegistration