メインコンテンツへスキップ
ResetPasswordMfaWebAuthnPlatformChallenge
Example
// Assuming 'sdk' is an instance of ResetPasswordMfaWebAuthnPlatformChallenge
try {
  await sdk.continueWithPasskey({
    rememberDevice: true // if user checked the box and sdk.screen.showRememberDevice is true
  });
  // On success, Auth0 handles redirection.
} catch (error) {
  console.error("Platform authenticator verification failed:", error);
  // If it's a WebAuthn API error (DOMException), report it
  if (error instanceof DOMException && error.name && error.message) { // DOMException check
    await sdk.reportBrowserError({ error: { name: error.name, message: error.message } });
  }
  // Check sdk.transaction.errors for server-side validation messages if the page reloads.
}

コンストラクター

ResetPasswordMfaWebAuthnPlatformChallenge
Constructor
ResetPasswordMfaWebAuthnPlatformChallenge クラスの新しいインスタンスを生成します。 グローバルな universal_login_context から必要なコンテキスト(画面、トランザクションなど)を取得し、 ScreenOverride を使用して画面固有のプロパティを設定します。

例外

Universal Login コンテキストが利用できない場合、またはコンテキスト内の画面名が ResetPasswordMfaWebAuthnPlatformChallenge.screenIdentifier と一致しない場合にスローされます。

プロパティ

branding
client
organization
prompt
screen
tenant
transaction
untrustedData
user
screenIdentifier
string
static

メソッド

continueWithPasskey
Promise<void>
screen.publicKey で提供されるチャレンジオプションを使用して navigator.credentials.get() を呼び出し、 WebAuthn プラットフォーム認証器チャレンジを開始します。 成功すると、action: "default" を指定して得られた認証情報アサーションを Auth0 に送信します。検証試行の送信が完了すると解決される Promise です。 正常に完了した場合、通常はリダイレクトが行われます。

例外

screen.publicKey が存在しない場合、 navigator.credentials.get() が失敗した場合(例: ユーザーによるキャンセル NotAllowedError)、 または Auth0 へのフォーム送信が失敗した場合に例外をスローします。 navigator.credentials.get()DOMException とともに失敗した場合は、そのエラーを捕捉して reportBrowserError を呼び出すことを推奨します。
Example
// 'sdk' が ResetPasswordMfaWebAuthnPlatformChallenge のインスタンスであると仮定
try {
  await sdk.continueWithPasskey({
    rememberDevice: true // ユーザーがチェックボックスをオンにし、sdk.screen.showRememberDevice が true の場合
  });
  // 成功時、Auth0 がリダイレクトを処理します。
} catch (error) {
  console.error("Platform authenticator verification failed:", error);
  // WebAuthn API のエラー (DOMException) の場合は報告する
  if (error instanceof DOMException && error.name && error.message) { // DOMException の確認
    await sdk.reportBrowserError({ error: { name: error.name, message: error.message } });
  }
  // ページがリロードされた場合は、サーバー側の検証メッセージについて sdk.transaction.errors を確認してください。
}
getErrors
コンテキストからトランザクションエラーの配列を取得します。存在しない場合は空配列を返します。トランザクションコンテキストに含まれるエラーオブジェクトの配列です。
reportBrowserError
Promise<void>
navigator.credentials.get() API 呼び出し中に発生したブラウザー側のエラーを報告します。 これは、ユーザーのキャンセル(NotAllowedError)、タイムアウト、その他の WebAuthn API 固有のエラーなどの問題を Auth0 に通知するために使用されます。 エラー詳細は action: "showError::{errorDetailsJsonString}" とともに送信されます。エラー報告が正常に送信されると解決される Promise です。

例外

フォーム送信が失敗した場合(例: ネットワークエラー、不正な state)。
Example
// UI コンポーネント内で、navigator.credentials.get() の catch ブロックにて:
// } catch (webAuthnError) {
//   if (webAuthnError instanceof DOMException) {
//     await sdk.reportBrowserError({
//       error: { name: webAuthnError.name, message: webAuthnError.message }
//     });
//   } else {
//     // 他のタイプのエラーを処理
//   }
// }
tryAnotherMethod
Promise<void>
ユーザーが WebAuthn プラットフォームオーセンティケーターのチャレンジをスキップし、 パスワードリセット中の本人確認に別の MFA(多要素認証)手段を選択できるようにします。 このアクションは action: "pick-authenticator" を Auth0 に送信し、ユーザーを MFA ファクターの選択画面に遷移させます。'pick-authenticator' アクションが送信されると解決される Promise です。

スロー

フォーム送信が失敗した場合(例: ネットワークエラー、不正な state)にスローされます。
Example
// UI コンポーネント内で "Try Another Method" ボタンがクリックされたとき:
try {
  await sdk.tryAnotherMethod();
  // 成功時、Auth0 が MFA ファクター選択画面へのリダイレクトを処理します。
} catch (error) {
  console.error("Failed to switch MFA method:", error);
}