> ## Documentation Index
> Fetch the complete documentation index at: https://docs-dev-eval-flywheel-swift-quickstart.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# ユースケース：Formsを使用して更新ポリシーフォームを構成する

> Forms for Actionsを使用して更新ポリシーフォームを構成する

<Card title="始める前に">
  1. 以下のスコープを有効にして、[マシンツーマシンアプリケーション](https://auth0.com/docs/get-started/auth0-overview/create-applications/machine-to-machine-apps)を作成します。

  * `read:users`
  * `update:users`
  * `create:users`
  * `read:users_app_metadata`
  * `update:users_app_metadata`
  * `create:users_app_metadata`

  2. マシンツーマシンアプリケーションの資格情報を使って[Vault接続](/docs/ja-jp/customize/forms/vault)を追加します。
</Card>

Forms for Actionsは、カスタムプライバシーポリシーフローを作成し、`app_metadata`オブジェクトの下に同意を保存できるようにします。

<Frame>
  <img src="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6i68dMvHDTijfRmSgN1x8Q/ad900e7d4c0fb34645921435472b8684/privavy-policy-form.png?fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=d7e29c353f23fa3d3445501ea4b70b23" alt="Dashboard > Actions > Forms > Privacy policy use case" data-og-width="1404" width="1404" data-og-height="638" height="638" data-path="docs/images/ja-jp/cdy7uua7fh8z/6i68dMvHDTijfRmSgN1x8Q/ad900e7d4c0fb34645921435472b8684/privavy-policy-form.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6i68dMvHDTijfRmSgN1x8Q/ad900e7d4c0fb34645921435472b8684/privavy-policy-form.png?w=280&fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=ac056f74132792eb4e099647133acef5 280w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6i68dMvHDTijfRmSgN1x8Q/ad900e7d4c0fb34645921435472b8684/privavy-policy-form.png?w=560&fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=8af34d23074ccbb78a5f856940196bdb 560w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6i68dMvHDTijfRmSgN1x8Q/ad900e7d4c0fb34645921435472b8684/privavy-policy-form.png?w=840&fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=198c9a9fff52cb62dd9fd81803672526 840w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6i68dMvHDTijfRmSgN1x8Q/ad900e7d4c0fb34645921435472b8684/privavy-policy-form.png?w=1100&fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=92825a4b92ba044d5b72a5acb68d0d19 1100w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6i68dMvHDTijfRmSgN1x8Q/ad900e7d4c0fb34645921435472b8684/privavy-policy-form.png?w=1650&fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=e9f3f6ec9440b4c29b5cc7c3dd004195 1650w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6i68dMvHDTijfRmSgN1x8Q/ad900e7d4c0fb34645921435472b8684/privavy-policy-form.png?w=2500&fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=685e69f3c9a49f9ad90e1ee183c8aee5 2500w" />
</Frame>

以下のセクションでは、ノードとフローを使用して更新ポリシーフォームを作成する方法と、フォームを[ログイン後](/docs/ja-jp/customize/actions/explore-triggers/signup-and-login-triggers/login-trigger)のアクションに追加する手順について説明します。

## フォームをゼロから作成する

情報を収集するためのフォームを作成するには、次の手順に従ってください。

1. **［Auth0 Dashboard］>［Actions（アクション）］>［Forms（フォーム）］** の順に選択して、フォームエディターを開きます。
2. **［Create Form（フォームを作成）］** > **［Start from scratch（初めから作成する）］** の順に選択します。

特に設定を変更しない限り、新しいフォームには開始ノード、ステップノード、および終了スクリーンノードが含まれます。

<Frame>
  <img src="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=fe212d12cfe660152a89986354ccf162" alt="Dashboard > Forms > Use Cases > Form" data-og-width="1234" width="1234" data-og-height="371" height="371" data-path="docs/images/ja-jp/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=280&fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=0a24b1985f5daa4539d510a2f039b28e 280w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=560&fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=b1be18d5bfe740a5540dd0d74022e637 560w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=840&fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=56e3b1d9bffdc39da53c53a6f8a77d23 840w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=1100&fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=5c2a657fca66cf4f31472d789f683f89 1100w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=1650&fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=54ff6c6d52d869e620912b74ebd1909a 1650w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=2500&fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=6bf156901d215577564c80ac7049538c 2500w" />
</Frame>

### ステップノードを構成する

ステップノードは、ユーザーに表示されるグラフィカルインターフェースです。次の手順に従って、ステップノードに[フィールド](/docs/ja-jp/customize/forms/nodes-and-components)を追加し、新しい同意の値を収集します。

1. **［Components menu（コンポーネントメニュー）］** から **［Rich text（リッチテキスト）］** フィールドを **Step（ステップ）** ノードにドラッグします。

   * **Rich text（リッチテキスト）** ：プライバシーポリシー更新の説明を入力します。
   * **［Save（保存）］** を選択します。
2. **［Legal（法務）］** フィールドを **Step（ステップ）** ノードにドラッグします。

   * **Id** ：`privacy_policies`を入力します。
   * **Required（必要）** ：チェックボックスを有効にします。
   * **Legal（法的文）** ：「`I agree to the Privacy Policy`（プライバシーポリシーに同意します）」と入力します。
   * **［Save（保存）］** を選択します。
3. **［Publish（公開）］** を選択して保存します。

<Frame>
  <img src="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/WoYtXampkXKSkLp-/docs/images/ja-jp/cdy7uua7fh8z/59zFFjQjAnjogkc2QGIqqJ/0ad66b1b636544122aa4e65968b76c2c/privacy-policy-step-node.png?fit=max&auto=format&n=WoYtXampkXKSkLp-&q=85&s=7bc0fd107d8898478b6da62e1fbbe2be" alt="Dashboard > Actions > Forms > Use case privacy policy step node" data-og-width="1404" width="1404" data-og-height="559" height="559" data-path="docs/images/ja-jp/cdy7uua7fh8z/59zFFjQjAnjogkc2QGIqqJ/0ad66b1b636544122aa4e65968b76c2c/privacy-policy-step-node.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/WoYtXampkXKSkLp-/docs/images/ja-jp/cdy7uua7fh8z/59zFFjQjAnjogkc2QGIqqJ/0ad66b1b636544122aa4e65968b76c2c/privacy-policy-step-node.png?w=280&fit=max&auto=format&n=WoYtXampkXKSkLp-&q=85&s=7c78b868f1b8ee74ad8d58e897a8268d 280w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/WoYtXampkXKSkLp-/docs/images/ja-jp/cdy7uua7fh8z/59zFFjQjAnjogkc2QGIqqJ/0ad66b1b636544122aa4e65968b76c2c/privacy-policy-step-node.png?w=560&fit=max&auto=format&n=WoYtXampkXKSkLp-&q=85&s=cf72b930e1fe619789a92cd60b366c12 560w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/WoYtXampkXKSkLp-/docs/images/ja-jp/cdy7uua7fh8z/59zFFjQjAnjogkc2QGIqqJ/0ad66b1b636544122aa4e65968b76c2c/privacy-policy-step-node.png?w=840&fit=max&auto=format&n=WoYtXampkXKSkLp-&q=85&s=60eba692f1a0923c10e0803fff6da313 840w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/WoYtXampkXKSkLp-/docs/images/ja-jp/cdy7uua7fh8z/59zFFjQjAnjogkc2QGIqqJ/0ad66b1b636544122aa4e65968b76c2c/privacy-policy-step-node.png?w=1100&fit=max&auto=format&n=WoYtXampkXKSkLp-&q=85&s=8d00e55abc1f544efa770217c19225a1 1100w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/WoYtXampkXKSkLp-/docs/images/ja-jp/cdy7uua7fh8z/59zFFjQjAnjogkc2QGIqqJ/0ad66b1b636544122aa4e65968b76c2c/privacy-policy-step-node.png?w=1650&fit=max&auto=format&n=WoYtXampkXKSkLp-&q=85&s=72f825f45ac9710ca7b5923c18f54fca 1650w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/WoYtXampkXKSkLp-/docs/images/ja-jp/cdy7uua7fh8z/59zFFjQjAnjogkc2QGIqqJ/0ad66b1b636544122aa4e65968b76c2c/privacy-policy-step-node.png?w=2500&fit=max&auto=format&n=WoYtXampkXKSkLp-&q=85&s=3e9a8d1f680a84e71672708d2b46c7b4 2500w" />
</Frame>

### フローノードを構成する

次の手順に従って、 **Step（ステップ）** ノードの後に **Flow（フロー）** ノードを追加し、`app_metadata`を更新して認証フローを再開します。

1. フォームエディターの下にある **［Flow（フロー）］** を選択します。
2. **Step（ステップ）** ノードと **Ending Screen（終了画面）** ノードの間にある既存のリンクを削除します。
3. 新たに **［Flow（フロー）］** > **［Click to add a flow（クリックしてフローを追加する）］** > **［Create a new flow（新しいフローを作成する）］** を選択します。

   * **［Name（名前）］** フィールドに`Update app_metadata`と入力します。
   * **［Create（作成）］** を選択します。
   * **［Save（保存）］** を選択します。
4. 下の画像のように **Flow（フロー）ノード** を **Step（ステップ）** ノードと **Ending Screen（終了画面）** ノードにリンクします。
5. **［Publish（公開）］** を選択して保存します。

<Frame>
  <img src="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6YIkzm7SrpM9LW76AXuRzh/353c518fe82bbaa440836da1d83596d6/link-policies.png?fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=1537905ecec15d8582a8d1db25a83378" alt="Dashboard > Actions > Forms > Form" data-og-width="1404" width="1404" data-og-height="599" height="599" data-path="docs/images/ja-jp/cdy7uua7fh8z/6YIkzm7SrpM9LW76AXuRzh/353c518fe82bbaa440836da1d83596d6/link-policies.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6YIkzm7SrpM9LW76AXuRzh/353c518fe82bbaa440836da1d83596d6/link-policies.png?w=280&fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=ee376157c2c6347aae5a4d6b9d8fb7d1 280w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6YIkzm7SrpM9LW76AXuRzh/353c518fe82bbaa440836da1d83596d6/link-policies.png?w=560&fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=82c1f65fd5647226e5c385db057e2049 560w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6YIkzm7SrpM9LW76AXuRzh/353c518fe82bbaa440836da1d83596d6/link-policies.png?w=840&fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=55313d57263283a065ced42649301ecb 840w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6YIkzm7SrpM9LW76AXuRzh/353c518fe82bbaa440836da1d83596d6/link-policies.png?w=1100&fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=5e4ca04b58cdaa33582deb9baabb2480 1100w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6YIkzm7SrpM9LW76AXuRzh/353c518fe82bbaa440836da1d83596d6/link-policies.png?w=1650&fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=8ec5e0ae45a661828433b075cf1290a3 1650w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/Hgc5H-9jm86lgTSV/docs/images/ja-jp/cdy7uua7fh8z/6YIkzm7SrpM9LW76AXuRzh/353c518fe82bbaa440836da1d83596d6/link-policies.png?w=2500&fit=max&auto=format&n=Hgc5H-9jm86lgTSV&q=85&s=bb347e1801bb5a6e497560ce5950c8a6 2500w" />
</Frame>

Auth0ユーザーの更新アクションをフローに追加するには、次の手順に従います。

1. **［Update user\_metadata（user\_metadata更新）］* \*\*\* フロー*\* を選択してから **［Edit flow（フローの編集）］** を選択し、新しいタブにフローエディターを開きます。
2. アクションの **［Start（開始）］** の下にある **［+］** アイコンを選択し、 **Update user（ユーザー更新）** アクションを追加します。以下のフィールドに入力して、 **［Save（保存）］** を選択します。

   * **Connection（接続）** ：ドロップダウンからM2MアプリケーションへのVault接続を選択します。

   * **User ID（ユーザーID）** ：`{{context.user.user_id}}`と入力します。

   * **Body（ボディー）** ：以下のコードをコピーして貼り付け、privacy\_policiesとprivacy\_policies\_timestampのプロパティを含むapp\_metadataを更新します。

     ```text lines theme={null}
     {
       "app_metadata": {
         "privacy_policies": true,
         "privacy_policies_timestamp": "{{ functions.toTimestamp() }}"
       }
     }
     ```

   * **［Save（保存）］** を選択します。
3. **［Publish（公開）］** を選択して保存します。

<Frame>
  <img src="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/i1p_SDsIvZER7hSj/docs/images/ja-jp/cdy7uua7fh8z/CvMNIwWrOUwaFW4X3G28p/1fb70ae57a20749d9ffaaba8dc0b7e26/update-user-privacy.png?fit=max&auto=format&n=i1p_SDsIvZER7hSj&q=85&s=3c0438dc0484b6b0a007e346c84b1db4" alt="Dashboard > Actions > Forms > User case privacy policy code" data-og-width="1404" width="1404" data-og-height="338" height="338" data-path="docs/images/ja-jp/cdy7uua7fh8z/CvMNIwWrOUwaFW4X3G28p/1fb70ae57a20749d9ffaaba8dc0b7e26/update-user-privacy.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/i1p_SDsIvZER7hSj/docs/images/ja-jp/cdy7uua7fh8z/CvMNIwWrOUwaFW4X3G28p/1fb70ae57a20749d9ffaaba8dc0b7e26/update-user-privacy.png?w=280&fit=max&auto=format&n=i1p_SDsIvZER7hSj&q=85&s=c93b761332f27e5ffbae6e5218b73887 280w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/i1p_SDsIvZER7hSj/docs/images/ja-jp/cdy7uua7fh8z/CvMNIwWrOUwaFW4X3G28p/1fb70ae57a20749d9ffaaba8dc0b7e26/update-user-privacy.png?w=560&fit=max&auto=format&n=i1p_SDsIvZER7hSj&q=85&s=0fc4b1d13fa7fb1e83426e4a7ddd5c96 560w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/i1p_SDsIvZER7hSj/docs/images/ja-jp/cdy7uua7fh8z/CvMNIwWrOUwaFW4X3G28p/1fb70ae57a20749d9ffaaba8dc0b7e26/update-user-privacy.png?w=840&fit=max&auto=format&n=i1p_SDsIvZER7hSj&q=85&s=7c4f8276a1bb99fc3685354a70469dd6 840w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/i1p_SDsIvZER7hSj/docs/images/ja-jp/cdy7uua7fh8z/CvMNIwWrOUwaFW4X3G28p/1fb70ae57a20749d9ffaaba8dc0b7e26/update-user-privacy.png?w=1100&fit=max&auto=format&n=i1p_SDsIvZER7hSj&q=85&s=b1d0986164bd7e869d320b754348dfa7 1100w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/i1p_SDsIvZER7hSj/docs/images/ja-jp/cdy7uua7fh8z/CvMNIwWrOUwaFW4X3G28p/1fb70ae57a20749d9ffaaba8dc0b7e26/update-user-privacy.png?w=1650&fit=max&auto=format&n=i1p_SDsIvZER7hSj&q=85&s=f53f679d8ec890d276dc3590943c36f2 1650w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/i1p_SDsIvZER7hSj/docs/images/ja-jp/cdy7uua7fh8z/CvMNIwWrOUwaFW4X3G28p/1fb70ae57a20749d9ffaaba8dc0b7e26/update-user-privacy.png?w=2500&fit=max&auto=format&n=i1p_SDsIvZER7hSj&q=85&s=e426aa2ccb8a15bafefe5a739c40e2e1 2500w" />
</Frame>

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  **Update app\_metadata** フローは、`privacy_policies true`値を`app_metadata`オブジェクトに追加し、[ヘルパー関数](/docs/ja-jp/customize/forms/variables)を使ってタイムスタンプを生成します。
</Callout>

## フォームのレンダーコードを取得する

フォームのレンダーコードを取得して、カスタムのログイン後アクションでフォームを視覚的にレンダリングするには、以下の手順に従います。

* フォームエディターから **`<>`［Render（レンダー）］** を選択します。
* **［Copy（コピー）］** を選択します。

<Frame>
  <img src="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=86c8268b27a15b7e69d76b4c01a0d838" alt="Dashboard > Actions > Forms > Form > Embed" data-og-width="1400" width="1400" data-og-height="848" height="848" data-path="docs/images/ja-jp/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=280&fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=be5a90439dc50303b4f395624aece93d 280w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=560&fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=44c59c9701584f997f3bf7ab9a197867 560w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=840&fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=0243254919d1b51727096502ee0df99f 840w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=1100&fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=e7dc94095f678fdbd9ac0e54dcb4ab1a 1100w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=1650&fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=94c19b6903aea9deef022035b0a4aa62 1650w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/OO69pFvOfQhqRJT5/docs/images/ja-jp/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=2500&fit=max&auto=format&n=OO69pFvOfQhqRJT5&q=85&s=2489c1aa2c2d76057cc92ca8e2404745 2500w" />
</Frame>

## ログイン後のアクションを作成する

ログイン後のアクションを作成してフォームをレンダリングするには、次の手順に従います。

1. **［Auth0 Dashboard］>［Actions（アクション）］>［Flows（フロー）］>［Login（ログイン）］** に移動します。
2. **［+］** アイコンを選択し、 **［Build from scratch（初めから構築する）］** を選択します。

   * **Name（名前）** ：`Render Update Policy Form`（更新ポリシーフォームのレンダリング）と入力します。
   * **Trigger（トリガー）** ：［`Login / Post Login`（ログイン/ログイン後）］を選択します。
   * **Runtime（ランタイム）** ：推奨バージョンを選択します。
3. **［Create（作成）］** を選択します。

ログイン後のアクションを構成するには、以下を行います。

1. 既存のコードをコードエディターから削除します。

2. フォームのレンダリングコードをコードエディターに貼り付けます。

3. コードを編集して、フォームをレンダリングする条件ロジックを定義します。

   ```javascript lines theme={null}
   /**
   * @param {Event} event - Details about the user and the context in which they are logging in.
   * @param {PostLoginAPI} api - Interface whose methods can be used to change the behavior of the login.
   */
   exports.onExecutePostLogin = async (event, api) => {
     const FORM_ID = 'REPLACE_WITH_YOUR_FORM_ID';

     if (event.user.app_metadata.privacy_policies !== true) {
       api.prompt.render(FORM_ID);
     }
   }

   exports.onContinuePostLogin = async (event, api) => { }
   ```

   <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
     上の例にあるコードでは、ユーザーのアプリメタデータに`privacy_policies`プロパティがない場合にフォームが表示されます。
   </Callout>

4. **［Deploy（デプロイ）］** を選択します。

5. **［Render Update Policy Form（更新ポリシーフォームのレンダリング）］** アクションを **Login（ログイン）** フローにドラッグ＆ドロップします。

   <Frame>
     <img src="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/aSomOJTiZjdX0Pz9/docs/images/ja-jp/cdy7uua7fh8z/5TOwDgevZsBqd7yZynUYWU/41ca909dc3007aed4f40ff794a05efa5/postlogin.png?fit=max&auto=format&n=aSomOJTiZjdX0Pz9&q=85&s=22e30ac0576ec5b2e35aaaada61a6876" alt="Dashboard > Forms > Use Case > Render update policy form login action" data-og-width="1370" width="1370" data-og-height="668" height="668" data-path="docs/images/ja-jp/cdy7uua7fh8z/5TOwDgevZsBqd7yZynUYWU/41ca909dc3007aed4f40ff794a05efa5/postlogin.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/aSomOJTiZjdX0Pz9/docs/images/ja-jp/cdy7uua7fh8z/5TOwDgevZsBqd7yZynUYWU/41ca909dc3007aed4f40ff794a05efa5/postlogin.png?w=280&fit=max&auto=format&n=aSomOJTiZjdX0Pz9&q=85&s=56bab58bb23c7057e1a3969de9bee19a 280w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/aSomOJTiZjdX0Pz9/docs/images/ja-jp/cdy7uua7fh8z/5TOwDgevZsBqd7yZynUYWU/41ca909dc3007aed4f40ff794a05efa5/postlogin.png?w=560&fit=max&auto=format&n=aSomOJTiZjdX0Pz9&q=85&s=74b2113a8679d7cdc559e6ae8fb23948 560w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/aSomOJTiZjdX0Pz9/docs/images/ja-jp/cdy7uua7fh8z/5TOwDgevZsBqd7yZynUYWU/41ca909dc3007aed4f40ff794a05efa5/postlogin.png?w=840&fit=max&auto=format&n=aSomOJTiZjdX0Pz9&q=85&s=53e9f94fbc8992566369eefa4f8053c0 840w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/aSomOJTiZjdX0Pz9/docs/images/ja-jp/cdy7uua7fh8z/5TOwDgevZsBqd7yZynUYWU/41ca909dc3007aed4f40ff794a05efa5/postlogin.png?w=1100&fit=max&auto=format&n=aSomOJTiZjdX0Pz9&q=85&s=8d6141238daf768f3e7bef08c1471bc2 1100w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/aSomOJTiZjdX0Pz9/docs/images/ja-jp/cdy7uua7fh8z/5TOwDgevZsBqd7yZynUYWU/41ca909dc3007aed4f40ff794a05efa5/postlogin.png?w=1650&fit=max&auto=format&n=aSomOJTiZjdX0Pz9&q=85&s=9d894185a96dbcca304cd10c4884d777 1650w, https://mintcdn.com/docs-dev-eval-flywheel-swift-quickstart/aSomOJTiZjdX0Pz9/docs/images/ja-jp/cdy7uua7fh8z/5TOwDgevZsBqd7yZynUYWU/41ca909dc3007aed4f40ff794a05efa5/postlogin.png?w=2500&fit=max&auto=format&n=aSomOJTiZjdX0Pz9&q=85&s=db4059713b5a3eb06e48c195af6b556d 2500w" />
   </Frame>

6. **［Apply（適用）］** を選択します。

### 実装をテストする

次の手順に従って実装をテストします。

1. `app_metadata`属性の`privacy_policies`に値がない既存のユーザーとしてログインします。
2. ログインフローのログイン後アクションがフォームをレンダリングして、同意を求めます。
3. **［Auth0 Dashboard］>［User Management（ユーザー管理）］>［Users（ユーザー）］** に移動し、ユーザーを見つけて、`app_metadata`属性の`privacy_policies`に`true`値とタイムスタンプが含まれていることを確認します。
