Example
export interface MfaWebAuthnRoamingEnrollmentMembers extends BaseMembers {
screen: ScreenMembersOnMfaWebAuthnRoamingEnrollment;
/**
* WebAuthn資格情報の作成を開始し、結果をサーバーに送信します。
* これは、ユーザーがFIDO Security Keysプロンプトを操作する場合に対応します。
* @param payload リクエストに含めるカスタムオプション(省略可能)。
* @example
* ```typescript
* import MfaWebAuthnRoamingEnrollment from '@auth0/auth0-acul-js/mfa-webauthn-roaming-enrollment';
*
* const webauthnEnrollment = new MfaWebAuthnRoamingEnrollment();
* try {
* // ブラウザーのWebAuthnプロンプトをトリガーします
* const credential = await navigator.credentials.create({ publicKey: webauthnEnrollment.screen.data.passkey.public_key });
* // 通常はここで資格情報のレスポンスをシリアライズします
* const response = JSON.stringify(credential);
* await webauthnEnrollment.enroll({ response });
* } catch (error) {
* console.error('WebAuthn enrollment failed:', error);
* // エラーを処理します(例:ユーザーにエラーメッセージを表示する、エラーの詳細を送信するなど)
* // await webauthnEnrollment.showError({ error: { name: error.name, message: error.message } });
* }
* ```
*/
enroll(payload: CustomOptions): Promise<void>;
/**
* WebAuthnブラウザーエラーの詳細をサーバーに送信します。
* ブラウザーのWebAuthn APIでエラーが発生した場合に使用します。
* @param payload エラーの詳細を含むオプション。
* @example
* ```typescript
* import MfaWebAuthnRoamingEnrollment from '@auth0/auth0-acul-js/mfa-webauthn-roaming-enrollment';
*
* const webauthnEnrollment = new MfaWebAuthnRoamingEnrollment();
* // ブラウザーのWebAuthn API呼び出しに対するエラーハンドラーの例
* const handleError = async (error: any) => {
* console.error('WebAuthn error:', error);
* await webauthnEnrollment.showError({
* error: {
* name: error.name,
* message: error.message,
* // 必要に応じて、その他の関連するエラープロパティも含めます
* },
* });
* };
* // ... WebAuthn API呼び出しのcatchブロックでhandleErrorを使用します
* ```
*/
showError(payload: ShowErrorOptions): Promise<void>;
/**
* ユーザーが別のMFA方式を試せるようにします。
* これは「Try Another Method」ボタンに対応します。
* @param payload リクエストに含めるカスタムオプション(省略可能)。
* @example
* ```typescript
* import MfaWebAuthnRoamingEnrollment from '@auth0/auth0-acul-js/mfa-webauthn-roaming-enrollment';
*
* const webauthnEnrollment = new MfaWebAuthnRoamingEnrollment();
* await webauthnEnrollment.tryAnotherMethod();
* ```
*/
tryAnotherMethod(payload?: TryAnotherMethodOptions): Promise<void>;
}
プロパティ
メソッド
Promise<void>
WebAuthn資格情報の作成を開始し、その結果をサーバーに送信します。
これは、ユーザーが FIDO Security Keys プロンプトを操作する場合に対応します。
Example
import MfaWebAuthnRoamingEnrollment from '@auth0/auth0-acul-js/mfa-webauthn-roaming-enrollment';
const webauthnEnrollment = new MfaWebAuthnRoamingEnrollment();
try {
// これによりブラウザーの WebAuthn プロンプトが表示されます
const credential = await navigator.credentials.create({ publicKey: webauthnEnrollment.screen.data.passkey.public_key });
// 通常は、ここで credential のレスポンスをシリアライズします
const response = JSON.stringify(credential);
await webauthnEnrollment.enroll({ response });
} catch (error) {
console.error('WebAuthn enrollment failed:', error);
// エラーを処理します。たとえば、ユーザーにエラーメッセージを表示したり、エラーの詳細を送信したりします
// await webauthnEnrollment.showError({ error: { name: error.name, message: error.message } });
}
Show パラメータ
Show パラメータ
リクエストに含める省略可能なカスタムオプション。
Promise<void>
WebAuthnブラウザーエラーの詳細をサーバーに送信します。
これは、ブラウザーの WebAuthn API でエラーが発生した場合に使用します。
Example
import MfaWebAuthnRoamingEnrollment from '@auth0/auth0-acul-js/mfa-webauthn-roaming-enrollment';
const webauthnEnrollment = new MfaWebAuthnRoamingEnrollment();
// ブラウザーの WebAuthn API 呼び出し用のエラーハンドラーの例
const handleError = async (error: any) => {
console.error('WebAuthn error:', error);
await webauthnEnrollment.showError({
error: {
name: error.name,
message: error.message,
// 利用可能であれば、関連する他のエラープロパティも含めます
},
});
};
// ... WebAuthn API 呼び出しの catch ブロックで handleError を使用します
Show パラメータ
Show パラメータ
Promise<void>
ユーザーが別のMFA方式を試せるようにします。
これは、「Try Another Method」ボタンに対応します。
Example
import MfaWebAuthnRoamingEnrollment from '@auth0/auth0-acul-js/mfa-webauthn-roaming-enrollment';
const webauthnEnrollment = new MfaWebAuthnRoamingEnrollment();
await webauthnEnrollment.tryAnotherMethod();
Show パラメータ
Show パラメータ
リクエストに含める省略可能なカスタムオプション。