@auth0/auth0-acul-js - v0.1.0-beta.5
    Preparing search index...

    Class MfaWebAuthnRoamingChallenge

    MfaWebAuthnRoamingChallenge

    Hierarchy

    • BaseContext
      • MfaWebAuthnRoamingChallenge

    Implements

    Index

    Constructors

    Properties

    screenIdentifier: string = ScreenIds.MFA_WEBAUTHN_ROAMING_CHALLENGE

    static

    Methods

    • Reports a specific WebAuthn API error to Auth0. This method should be used if navigator.credentials.get() fails in a way that verify() doesn't automatically handle, or if the developer wants to explicitly report an error before trying another action. It submits the error details with action: "showError::{errorDetails}".

      Parameters

      Returns Promise<void>

      A promise that resolves when the error report is submitted.

      Throws an error if the form submission fails.

      // Assuming 'sdk' is an instance of MfaWebAuthnRoamingChallenge
      // And webAuthnError is an error object from a failed navigator.credentials.get() call.
      try {
      await sdk.reportWebAuthnError({
      error: { name: webAuthnError.name, message: webAuthnError.message }
      });
      } catch (submitError) {
      console.error("Failed to report WebAuthn error:", submitError);
      }
    • Initiates the WebAuthn challenge by calling navigator.credentials.get() with the options provided in screen.data.publicKeyChallengeOptions. If successful, it submits the resulting credential to Auth0 with action: "default". If navigator.credentials.get() fails with a known WebAuthn API error (like NotAllowedError), this method will internally call reportWebAuthnError to inform Auth0.

      Parameters

      Returns Promise<void>

      A promise that resolves when the verification attempt is submitted. It does not directly return data as a successful operation typically results in a redirect.

      Throws an error if screen.data.publicKeyChallengeOptions is missing, if navigator.credentials.get() fails with an unexpected error, or if the form submission to Auth0 fails.

      // Assuming 'sdk' is an instance of MfaWebAuthnRoamingChallenge
      try {
      await sdk.verify({ rememberDevice: true });
      // On success, Auth0 handles redirection.
      } catch (error) {
      console.error("Security key verification failed:", error);
      // Check sdk.transaction.errors for server-side validation messages if the page reloads.
      }