> ## Documentation Index
> Fetch the complete documentation index at: https://docs-staging-feat-sdk-reference-docs.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Guardian の仕組みと、Guardian SDK を使用して独自の認証器や Guardian のようなアプリケーションを構築する方法を説明します。

# Auth0 Guardian

Auth0 Guardian は、iOS および Android デバイス向けのモバイルアプリケーションで、ユーザーはプッシュ通知または一時的なワンタイムパスワード (OTP) を使用して[多要素認証 (MFA)](/docs/ja-jp/secure/multi-factor-authentication)を完了できます。

Auth0 Guardian は、ユーザーの登録済みデバイス (通常は携帯電話やタブレット) にプッシュ通知を送信したり、アプリ内で直接ワンタイムパスワードを生成したりできます。ユーザーはこれらのプッシュ通知にすばやく応答するか、OTP を取得してログインを完了できます。

ユーザーは、[Apple App Store](https://apps.apple.com/us/app/auth0-guardian/id1093447833) または [Google Play Store](https://play.google.com/store/apps/details?id=com.auth0.guardian) から Auth0 Guardian アプリをダウンロードできます。あるいは、Guardian SDK を使用して、独自のカスタムアプリに Auth0 Guardian の機能を組み込むこともできます。

<h2 id="push-notifications">
  プッシュ通知
</h2>

プッシュ通知を使用するには、ユーザーのデバイスに Auth0 Guardian アプリ、または Guardian SDK を使用して構築したカスタムアプリのいずれかがインストールされている必要があります。ユーザーが認証を試みると、インストール済みのアプリにプッシュ通知が送信されます。ログインを完了するには、ユーザーはその通知に応答する必要があります。これにより、ユーザーがログイン情報を把握しており、かつ <Tooltip tip="多要素認証 (MFA): SMS 経由のコードなど、ユーザー名とパスワードに加えて認証要素を使用するユーザー認証プロセス。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=MFA">MFA</Tooltip> 用に設定されたデバイスを所持していることを証明できます。

Auth0 のプッシュ通知は、AWS Simple Notification Service (SNS) または以下のベンダー直結サービスを 1 つ以上使用して実装でき、ベンダー固有の連携を設定できます。

* Firebase Cloud Messaging (FCM)

  * プッシュ通知の内容を変更する方法の詳細については、[FCM のドキュメント](https://firebase.google.com/docs/cloud-messaging/concept-options)を参照してください。
* Apple Push Notification (APN)

  * プッシュ通知の内容を変更する方法の詳細については、[Apple のドキュメント](https://developer.apple.com/documentation/usernotifications/modifying-content-in-newly-delivered-notifications)を参照してください。

<Frame>
  <img src="https://mintcdn.com/docs-staging-feat-sdk-reference-docs/FZw-B4H1_2E4nPXU/docs/images/cdy7uua7fh8z/TdN0nXfYs0mqHpi9U3JQ9/7bf919773ed8f94c7d5be25cc345eebd/diagram.png?fit=max&auto=format&n=FZw-B4H1_2E4nPXU&q=85&s=5bee43c7dcaa59bf3e13d1eeaa80b857" alt="Auth0 Guardian フロー図" width="1450" height="913" data-path="docs/images/cdy7uua7fh8z/TdN0nXfYs0mqHpi9U3JQ9/7bf919773ed8f94c7d5be25cc345eebd/diagram.png" />
</Frame>

<h3 id="enroll-in-push-notifications">
  プッシュ通知を登録する
</h3>

Auth0 Guardian を使用してプッシュ通知を設定すると、ユーザーは初回のサインアップ時またはアプリケーションへの初回ログイン時に、モバイルアプリのダウンロードを求められます。Guardian SDK を使用してカスタムアプリにプッシュ通知を実装する場合、登録時にアプリケーションのダウンロードを求められることはありません。

プッシュ通知は、<Tooltip tip="Auth0 Dashboard: サービスを設定するための Auth0 の主要製品。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Auth0+Dashboard">Auth0 Dashboard</Tooltip> の [Security > Multi-factor Auth > Push Notification using Auth0 Guardian](https://manage.auth0.com/#/security/mfa/guardian) から有効にできます。

<Frame>
  <img src="https://mintcdn.com/docs-staging-feat-sdk-reference-docs/FZw-B4H1_2E4nPXU/docs/images/cdy7uua7fh8z/fwjSKFNhsvObzdPDiA79N/65850980f88029cb23eef5eaef4f9b20/Auth0_Dashboard_-_Push_Notification_screen.png?fit=max&auto=format&n=FZw-B4H1_2E4nPXU&q=85&s=4e4d8fb93d4fd810aafe617523d8016d" alt="Auth0 Dashboard > Security > Multi-factor Auth > Push Notification using Auth0 Guardian" data-og-width="1854" width="1854" data-og-height="1616" height="1616" data-path="docs/images/cdy7uua7fh8z/fwjSKFNhsvObzdPDiA79N/65850980f88029cb23eef5eaef4f9b20/Auth0_Dashboard_-_Push_Notification_screen.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-feat-sdk-reference-docs/FZw-B4H1_2E4nPXU/docs/images/cdy7uua7fh8z/fwjSKFNhsvObzdPDiA79N/65850980f88029cb23eef5eaef4f9b20/Auth0_Dashboard_-_Push_Notification_screen.png?w=280&fit=max&auto=format&n=FZw-B4H1_2E4nPXU&q=85&s=bd5632580e8f352061c9090b1dab3927 280w, https://mintcdn.com/docs-staging-feat-sdk-reference-docs/FZw-B4H1_2E4nPXU/docs/images/cdy7uua7fh8z/fwjSKFNhsvObzdPDiA79N/65850980f88029cb23eef5eaef4f9b20/Auth0_Dashboard_-_Push_Notification_screen.png?w=560&fit=max&auto=format&n=FZw-B4H1_2E4nPXU&q=85&s=df5e77c26875787d4cf0afdb00cf5a4f 560w, https://mintcdn.com/docs-staging-feat-sdk-reference-docs/FZw-B4H1_2E4nPXU/docs/images/cdy7uua7fh8z/fwjSKFNhsvObzdPDiA79N/65850980f88029cb23eef5eaef4f9b20/Auth0_Dashboard_-_Push_Notification_screen.png?w=840&fit=max&auto=format&n=FZw-B4H1_2E4nPXU&q=85&s=48b682dbd9a3af0618c10f69f4350757 840w, https://mintcdn.com/docs-staging-feat-sdk-reference-docs/FZw-B4H1_2E4nPXU/docs/images/cdy7uua7fh8z/fwjSKFNhsvObzdPDiA79N/65850980f88029cb23eef5eaef4f9b20/Auth0_Dashboard_-_Push_Notification_screen.png?w=1100&fit=max&auto=format&n=FZw-B4H1_2E4nPXU&q=85&s=22ee8bc4ed9ce06a3209e483fd136784 1100w, https://mintcdn.com/docs-staging-feat-sdk-reference-docs/FZw-B4H1_2E4nPXU/docs/images/cdy7uua7fh8z/fwjSKFNhsvObzdPDiA79N/65850980f88029cb23eef5eaef4f9b20/Auth0_Dashboard_-_Push_Notification_screen.png?w=1650&fit=max&auto=format&n=FZw-B4H1_2E4nPXU&q=85&s=fd77c86bfe7961afecfbffcbb595d2a3 1650w, https://mintcdn.com/docs-staging-feat-sdk-reference-docs/FZw-B4H1_2E4nPXU/docs/images/cdy7uua7fh8z/fwjSKFNhsvObzdPDiA79N/65850980f88029cb23eef5eaef4f9b20/Auth0_Dashboard_-_Push_Notification_screen.png?w=2500&fit=max&auto=format&n=FZw-B4H1_2E4nPXU&q=85&s=a9abc3d61ae4a73a32752d192c10b8b8 2500w" />
</Frame>

ユーザーが初めてサインアップするかアプリケーションにログインすると、[Universal Login](/docs/ja-jp/authenticate/login/auth0-universal-login) に、Auth0 Guardian アプリまたはカスタム Guardian SDK アプリを第 2 の認証要素として登録するための QR コードが表示されます。ユーザーは登録を完了するために、指定されたアプリでこのコードを短時間のうちにスキャンする必要があります。

登録が完了すると、ユーザーはプッシュ通知を認証要素として使用できるようになります。以後、ユーザーがアプリケーションへのログインを試みるたびに、Auth0 Guardian またはカスタム Guardian SDK アプリを介して、ユーザーのデバイスにプッシュ通知が送信されます。ユーザーは、アプリケーションに正常にログインするために、このrequestを承認する必要があります。

デバイスまたは recovery code を紛失したユーザーの MFA をリセットする方法については、[Reset Multi-Factor Authentication and Recovery Codes](/docs/ja-jp/secure/multi-factor-authentication/reset-user-mfa) を参照してください。

<h2 id="temporary-one-time-passwords-otps">
  一時的なワンタイムパスワード (OTP)
</h2>

Auth0 Guardian アプリと Guardian SDK は、第2の認証要素として一時的なワンタイムパスワードにも対応しています。アプリと SDK はどちらも一時的な OTP を生成でき、ユーザーはそれを使って <Tooltip tip="Universal Login: Auth0 の Authorization Server でホストされる Universal Login にアプリケーションがリダイレクトし、ユーザーの本人確認を行います。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Universal+Login">Universal Login</Tooltip> の MFA チャレンジを完了できます。

デフォルトでは、Auth0 Guardian アプリには、ユーザーが登録しているアプリケーションの一覧が表示されます。アプリケーションを選択すると、そのアプリケーションに対応する OTP が表示されます。OTP はそれぞれ 30 秒間有効です。有効期限が近づいた OTP は赤色で表示されます。有効期限が切れると、アプリはすぐに新しい OTP を生成します。認証の失敗を防ぐため、ユーザーは赤色の OTP を使用しないでください。

カスタム Guardian SDK アプリでは、OTP の表示が異なる場合があります。

<h3 id="use-temporary-one-time-passwords">
  一時的なワンタイムパスワードを使用する
</h3>

OTPは主に次の2つの方法で活用できます。

* Auth0 Guardianアプリまたはその他のカスタムアプリがプッシュリクエストを受信しない場合に、プッシュ通知のフォールバック手段として使用する。
* テナントで[One-Time Password認証要素](/docs/ja-jp/secure/multi-factor-authentication/multi-factor-authentication-factors)を有効にしている場合は、MFAチャレンジとして使用する。

OTPコードの長さと有効期限は、既定値 (6桁、300秒) 以外に設定できます。詳しくは、[OTP設定を構成する](/docs/ja-jp/secure/multi-factor-authentication/multi-factor-authentication-factors/configure-sms-voice-notifications-mfa#configure-otp-settings)をお読みください。

また、信頼済みブラウザーからのログイン時にMFAを要求する頻度も設定できます。詳しくは、[MFA画面の表示頻度を変更する](/docs/ja-jp/secure/multi-factor-authentication/customize-mfa#change-frequency-of-mfa-prompts)をお読みください。

<AccordionGroup>
  <Accordion title="フォールバック手段: プッシュ通知のフォールバック手段としてOTPを使用する">
    ユーザーがAuth0 Guardianまたはその他のカスタムアプリ経由でプッシュ通知を受信できない場合は、代わりに一時的なOTPを使用してMFAチャレンジを完了できます。

    **ユーザーフローの例**:

    1. ユーザーがアプリケーションへのログインを試みます。Universal LoginのMFA画面までは進みますが、プッシュ通知を受信しません。
    2. MFA画面で、ユーザーは**Manually Enter Code**ボタンを選択します。OTPを使用して認証するには、このオプションを選択する必要があります。

           <Frame>
             <img src="https://mintcdn.com/docs-staging-feat-sdk-reference-docs/uYX4Y6MMvVE52ldp/docs/images/cdy7uua7fh8z/7reEOLI5CWxbpRzgZY7gxg/58da830927a33545d9a576974ec3ba6e/MFA_-_Push_-_English.png?fit=max&auto=format&n=uYX4Y6MMvVE52ldp&q=85&s=cedb196eb098a03e2fdcad401e0aa018" alt="Manually Enter Codeボタンが表示されたMFA画面の例" width="494" height="761" data-path="docs/images/cdy7uua7fh8z/7reEOLI5CWxbpRzgZY7gxg/58da830927a33545d9a576974ec3ba6e/MFA_-_Push_-_English.png" />
           </Frame>
    3. ユーザーはAuth0 GuardianまたはカスタムGuardian SDKアプリを開き、アクセスしようとしているアプリケーションを選択します。
    4. ユーザーは、Account Detailページの下部に表示されているOTPをコピーします。
    5. ユーザーはMFA画面にOTPを入力して、チャレンジを完了します。
  </Accordion>

  <Accordion title="MFAチャレンジ: MFAチャレンジとしてOTPを使用する">
    ユーザーがOTPで認証できるようにするには、テナントで**One-Time Password**を[MFA認証要素](/docs/ja-jp/secure/multi-factor-authentication/multi-factor-authentication-factors)として有効にする必要があります。有効にすると、ユーザーはUniversal Login経由でログインする際に、OTPを使用してMFA画面を完了できます。MFA認証要素を有効にするには、[Auth0 Dashboard > Security > Multi-factor Auth](https://manage.auth0.com/#/security/mfa)に移動します。

    ユーザーは、初回のサインアップ時またはアプリケーションへのログイン時に、MFA認証要素としてOTPを登録できます。使用しているデバイスの種類に応じて、[Universal Login](/docs/ja-jp/authenticate/login/auth0-universal-login)には次のいずれかが表示されます。

    * **モバイル以外のデバイスの場合**: Universal Loginには、登録を続行するためにユーザーがスキャンできるQRコードが表示されます。

    <Frame>
      <img src="https://mintcdn.com/docs-staging-feat-sdk-reference-docs/9vX9KFZO3QwQJOMH/docs/images/cdy7uua7fh8z/3kbyOBiLOpJiY8vI0kUqwg/b10f58a3b3ace74de613e28517726069/OTP_Challenge_3_-_English.png?fit=max&auto=format&n=9vX9KFZO3QwQJOMH&q=85&s=6cf33cdf7e0da3ed38f15966df087068" alt="Trouble Scanning?リンクが表示されたOTP登録画面の例" width="492" height="943" data-path="docs/images/cdy7uua7fh8z/3kbyOBiLOpJiY8vI0kUqwg/b10f58a3b3ace74de613e28517726069/OTP_Challenge_3_-_English.png" />
    </Frame>

    * **モバイルデバイスの場合**: Universal LoginではQRコードは表示されず、代わりに登録コードが直接表示されます。

    <Frame>
      <img src="https://mintcdn.com/docs-staging-feat-sdk-reference-docs/VaWHC_KPGgUmZpWE/docs/images/cdy7uua7fh8z/5QvQ9FLYnVZXINFAeLkIr9/04df9be004169ac06b8d9fee456dc599/OTP_prompt_-_English.png?fit=max&auto=format&n=VaWHC_KPGgUmZpWE&q=85&s=b8fabfafa3d4abe121c34fe205fbcce8" alt="モバイルデバイスに表示された一時的なワンタイムパスワードの登録画面。 " width="498" height="685" data-path="docs/images/cdy7uua7fh8z/5QvQ9FLYnVZXINFAeLkIr9/04df9be004169ac06b8d9fee456dc599/OTP_prompt_-_English.png" />
    </Frame>

    どちらの方法でも、ユーザーは画面上の手順に従って、Auth0 GuardianアプリまたはカスタムGuardian SDKアプリを第2の認証要素として登録できます。通常、このプロセスでは、ユーザーが該当するアプリに自分のアプリケーションを追加し、そのアプリケーション用に生成されたOTPを取得します。その後、ユーザーはUniversal Login画面にOTPを入力して、登録プロセスを完了します。

    ユーザーが登録完了後に次回アプリケーションへのログインを試みる際は、Auth0 GuardianまたはカスタムGuardian SDKアプリのOTPをチャレンジに入力して認証できます。
  </Accordion>
</AccordionGroup>

<h2 id="auth0-guardian-app-settings">
  Auth0 Guardian アプリの設定
</h2>

<h3 id="user-security-settings">
  ユーザーのセキュリティ設定
</h3>

Auth0 Guardian アプリでは、iOS と Android で、アプリのセキュリティ層としてパスコードや生体認証を有効にできます。ユーザーがこれらのオプションを 1 つ以上有効にすると、プッシュ通知に応答したり OTP を取得したりする前に、これらの認証を完了する必要があります。

iOS または Android デバイスでこれらのオプションを有効にするには、以下の手順に従ってください。

<Tabs>
  <Tab title="iOS">
    iOS で Auth0 Guardian アプリのセキュリティ設定を有効にするには、次の手順を実行します。

    1. アプリで **歯車アイコン** を選択して、設定メニューを開きます。
    2. **Passcode** を選択して、パスコード保護を有効にします。
    3. パスコードを設定し、確認します。

    これで、アプリはパスコードで保護されます。ユーザーは、プッシュ通知に応答したり OTP を取得したりする前に、このパスコードを入力する必要があります。

    パスコード保護を有効にすると、代替のセキュリティ対策としてデバイスの生体認証も設定できます。デバイスの生体認証を有効にするには、次の手順を実行します。

    1. アプリで **歯車アイコン** を選択して、設定メニューを開きます。
    2. **Face ID** や **Touch ID** など、利用可能なオプションのいずれかを選択して、デバイスの生体認証を有効にします。
  </Tab>

  <Tab title="Android">
    Android で Auth0 Guardian アプリのセキュリティ設定を有効にするには、次の手順を実行します。

    1. アプリで **3 点メニュー** を選択して、設定メニューを開きます。
    2. **Always Ask for Passphrase** オプションのスイッチを有効にします。
    3. Auth0 Guardian アプリの設定時に設定したパスフレーズを入力します。

    これで、アプリは Auth0 Guardian のパスフレーズで保護されます。ユーザーは、プッシュ通知に応答したり OTP を取得したりする前に、このパスフレーズを入力する必要があります。

    パスフレーズ保護を有効にすると、代替のセキュリティ対策としてデバイスの生体認証も設定できます。デバイスの生体認証を有効にするには、次の手順を実行します。

    1. アプリで **3 点メニュー** を選択して、設定メニューを開きます。
    2. **Use Biometrics to unlock** オプションのスイッチを有効にします。
  </Tab>
</Tabs>

<h3 id="localization-options">
  ローカライズ設定
</h3>

Auth0 Guardian アプリは、iOS と Android で複数の言語および方言のローカライズに対応しています。

Settings メニューの Language セクションでは、ユーザーは使用する言語を選択できます。デフォルトでは、アプリはデバイスのシステム言語と同じ言語を使用します。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  プッシュ通知の内容の大半は、ユーザーが選択した言語で表示されます。ただし、プッシュ通知のタイトルは翻訳されません。タイトルが設定された時点では、まだ言語設定が取得されていないためです。
</Callout>

Auth0 Guardian アプリは、次の言語および方言に対応しています。

| 言語 | コード |
| - | - |
| アルバニア語 | `sq` |
| アムハラ語 | `am` |
| アラビア語\* | `ar` |
| アラビア語 (エジプト) \* | `ar-EG` |
| アラビア語 (サウジアラビア) \* | `ar-SA` |
| アルメニア語 | `hy` |
| アゼルバイジャン語 | `az` |
| バスク語 | `eu-ES` |
| ベンガル語 | `bn` |
| ボスニア語 | `bs` |
| ブルガリア語 | `bg` |
| カタルーニャ語 | `ca-ES` |
| 中国語 - 香港 | `zh-HK` |
| 中国語 - 簡体字 | `zh-CN` |
| 中国語 - 繁体字 | `zh-TW` |
| クロアチア語 | `hr` |
| チェコ語 | `cs` |
| デンマーク語 | `da` |
| オランダ語 | `nl` |
| 英語 | `en` |
| 英語 - カナダ | `en-CA` |
| エストニア語 | `et` |
| ファルシ語 (ペルシア語) \* | `fa` |
| フィンランド語 | `fi` |
| フランス語 | `fr-FR` |
| フランス語 - カナダ | `fr-CA` |
| ガリシア語 | `gl-ES` |
| ジョージア語 | `ka` |
| ドイツ語 | `de` |
| ギリシャ語 | `el` |
| グジャラート語 | `gu` |
| ヘブライ語\* | `he` |
| ヒンディー語 | `hi` |
| ハンガリー語 | `hu` |
| アイスランド語 | `is` |
| インドネシア語 | `id` |
| イタリア語 | `it` |
| 日本語 | `ja` |
| カンナダ語 | `kn` |
| 韓国語 | `ko` |
| ラトビア語 | `lv` |
| リトアニア語 | `lt` |
| マケドニア語 | `mk` |
| マレー語 | `ms` |
| マラヤーラム語 | `ml` |
| マラーティー語 | `mr` |
| モンゴル語 | `mn` |
| モンテネグロ語 | `cnr` |
| ミャンマー語 | `my` |
| ノルウェー語 | `no` |
| ノルウェー語 - ブークモール | `nb` |
| ノルウェー語 - ニーノシュク | `nn` |
| ポーランド語 | `pl` |
| ポルトガル語 - ブラジル | `pt-BR` |
| ポルトガル語 - ポルトガル | `pt-PT` |
| パンジャブ語 | `pa` |
| ルーマニア語 | `ro` |
| ロシア語 | `ru` |
| セルビア語 | `sr` |
| スロバキア語 | `sk` |
| スロベニア語 | `sl` |
| ソマリ語 | `so` |
| スペイン語 | `es` |
| スペイン語 - アルゼンチン | `es-AR` |
| スペイン語 - ラテンアメリカ | `es-419` |
| スペイン語 - メキシコ | `es-MX` |
| スワヒリ語 | `sw` |
| スウェーデン語 | `sv` |
| タガログ語 | `tl` |
| タマジグト語 | `zgh` |
| タミル語 | `ta` |
| テルグ語 | `te` |
| タイ語 | `th` |
| トルコ語 | `tr` |
| ウクライナ語 | `uk` |
| ウルドゥー語\* | `ur` |
| ベトナム語 | `vi` |
| ウェールズ語 | `cy` |

<h3 id="guardian-app-themes">
  Guardian アプリのテーマ
</h3>

iOS と Android 向けの Auth0 Guardian アプリは、ライトモードとダークモードのテーマに対応しています。

設定メニューの Theme セクションでは、次のオプションを選択できます。

* **System**: デフォルトのシステムテーマを使用します
* **Light**: ライトモードのテーマを有効にします
* **Dark**: ダークモードのテーマを有効にします

<h3 id="customization-options-for-protected-applications">
  保護対象のアプリケーションのカスタマイズ オプション
</h3>

Auth0 Guardian アプリで保護対象のアプリケーションをユーザーが区別しやすいように、各アプリケーションはそれぞれ異なる名前、アクセントカラー、アイコンでカスタマイズできます。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Auth0 Guardian アプリでアプリケーションに割り当てられるデフォルト名は、[テナント名](/docs/ja-jp/get-started/tenant-settings/find-your-tenant-name-or-tenant-id)または[テナント設定](/docs/ja-jp/get-started/tenant-settings)で設定した Friendly Name によって決まります。同様に、デフォルトのロゴは、テナント設定で指定した Logo URL に基づきます。

  テナント設定を編集するには、[Auth0 Dashboard > Settings > General](https://manage.auth0.com/dashboard/#/tenant/general) に移動します。
</Callout>

保護対象のアプリケーションをカスタマイズするには、次の手順に従います。

1. 一覧からアプリケーションを選択します。

   * **ヒント**: アプリケーションを左にスワイプすると、Edit と Delete のオプションを表示することもできます。
2. Account Detail ページで **Edit** を選択します。
3. 必要に応じて、アプリケーションの名前、色、アイコンを変更します。
4. **Save** を選択します。

<h2 id="guardian-sdks">
  Guardian SDK
</h2>

[Guardian SDK をインストール](/docs/ja-jp/secure/multi-factor-authentication/multi-factor-authentication-developer-resources/install-guardian-sdk) ([iOS](/docs/ja-jp/secure/multi-factor-authentication/auth0-guardian/guardian-for-ios-sdk) と [Android](/docs/ja-jp/secure/multi-factor-authentication/auth0-guardian/guardian-for-android-sdk) で利用可能) すると、ブランディングやルック＆フィールを完全にコントロールしながら、独自の多要素認証アプリケーションを構築できます。Guardian SDK を使用すれば、Guardian のように動作する独自のカスタムモバイルアプリケーションを開発したり、既存のモバイルアプリケーションにプッシュ通知の受信など Guardian の機能の一部を組み込んだりできます。代表的なユースケースとしては、銀行アプリが挙げられます。たとえば、ATM で取引が行われた際にプッシュ通知を受信して承認できるように、既存のモバイルアプリで Guardian SDK を使用できます。

<h2 id="use-actions-to-enable-multi-factor-with-auth0-guardian">
  Actions を使用して Auth0 Guardian の多要素認証を有効にする
</h2>

Action 内で Auth0 Guardian を有効にするには、多要素認証を有効にする際に `provider` パラメーターに `guardian` を指定します。

```js lines theme={null}
exports.onExecutePostLogin = async (event, api) => {
  api.multifactor.enable('guardian', { allowRememberBrowser: false });
};
```

ユーザーに毎回 Auth0 Guardian でのログインを求めるには、`allowRememberBrowser: false` を指定した Action を作成します。

<h2 id="multi-factor-with-auth0-guardian-and-authorization-extension">
  Auth0 Guardian と Authorization Extension を使用した多要素認証
</h2>

このテンプレートは、条件が満たされたときに、プッシュ通知のために Auth0 Guardian で多要素認証をトリガーするための例と出発点を示しています。

初回ログイン時に、ユーザーはデバイスを登録できます。M の詳細については、Enable Multi-Factor Authentication を参照してください。

```js lines theme={null}
exports.onExecutePostLogin = async (event, api) => {
const groups = event.user.app_metadata.authorization.groups;
const GROUPS_WITH_MFA = {
// MFAが必要なグループをここに追加してください
// 例
admins: true
};

const needsMFA = !!groups.find(function (group) {
return GROUPS_WITH_MFA[group];
});

if (needsMFA) {
// 省略可能。デフォルトはtrueです。毎回Guardian認証を強制するにはfalseに設定してください。
// 詳細はhttps://auth0.com/docs/secure/multi-factor-authentication/customize-mfa#change-frequency-of-mfa-prompts を参照してください
api.multifactor.enable('guardian', { allowRememberBrowser: false });
}

};
```

<h2 id="learn-more">
  詳細はこちら
</h2>

* [Guardian SDKをインストールする](/docs/ja-jp/secure/multi-factor-authentication/multi-factor-authentication-developer-resources/install-guardian-sdk)
* [Guardian.swift iOS SDK](/docs/ja-jp/secure/multi-factor-authentication/auth0-guardian/guardian-for-ios-sdk)
* [Android向けGuardian SDK](/docs/ja-jp/secure/multi-factor-authentication/auth0-guardian/guardian-for-android-sdk)
* [MFA用のプッシュ通知を設定する](/docs/ja-jp/secure/multi-factor-authentication/multi-factor-authentication-factors/configure-push-notifications-for-mfa)
* [ユーザーの多要素認証とリカバリーコードをリセットする](/docs/ja-jp/secure/multi-factor-authentication/reset-user-mfa)
* [Guardianエラーコードリファレンス](/docs/ja-jp/secure/multi-factor-authentication/multi-factor-authentication-developer-resources/guardian-error-code-reference)
