始める前に
- 次のスコープを有効にして、Machine-to-Machine Application を作成します。
read:usersupdate:userscreate:usersread:users_app_metadataupdate:users_app_metadatacreate:users_app_metadata
- M2M アプリケーションの認証情報を使用して、Vault 接続 を追加します。
user_metadata 属性として保存できます。

フォームを最初から作成する
- Auth0 Dashboard > Actions > Forms を選択して、フォームエディターを開きます。
- Create Form > Start from scratch を選択します。

Step ノードを設定する
-
Components menu から Rich text フィールドを Step ノードにドラッグします。
-
Rich text: カスタムメッセージを入力します。
- Example:
プロフィールを完成させましょう。エクスペリエンスをパーソナライズするために、プロフィール情報の入力が必要です。
- Example:
- Save を選択します。
-
Rich text: カスタムメッセージを入力します。
-
Text フィールドを Step ノードにドラッグします。
- ID:
company_nameを入力します。 - Label: チェックボックスをオンにします。
- Label:
Company nameを入力します。 - Required: チェックボックスをオンにします。
- Save を選択します。
- ID:
-
Text フィールドを Step ノードにドラッグします。
- ID:
job_titleを入力します。 - Label:
Job titleを入力します。 - Label: チェックボックスをオンにします。
- Required: チェックボックスをオンにします。
- Save を選択します。
- ID:
- 保存するには Publish を選択します。

Flow ノードを設定する
user_metadata を更新し、認証フローを再開するために、Step ノードの後に Flow ノードを追加します。
- フォームエディターの下部で Flow を選択します。
- Step ノードと Ending Screen ノードの間にある既存のリンクを削除します。
-
新しい Flow > Click to add a flow > Create a new flow. を選択します。
- Name フィールドに
Update user_metadataと入力します。 - Create を選択します。
- Save を選択します。
- Name フィールドに
- 以下の図のように、Flow ノードを Step ノードと Ending Screen ノードに接続します。
- 保存するには Publish を選択します。

- Update user_metadata フローを選択し、次に Edit Flow を選択して、新しいタブで Flow エディタを開きます。
-
Start アクションの下にある + アイコンを選択して Update user アクションを追加します。以下のフィールドを入力し、続行するには Save を選択します。
- Connection: ドロップダウンから、M2M アプリケーション用の Vault 接続を選択します。
-
User ID:
{{context.user.user_id}}と入力します。 -
Body: 次のコードをコピーして貼り付け、
job_titleとcompany_nameプロパティでuser_metadataを更新します。 - Save を選択します。
- 保存するには Publish を選択します。

フォームのレンダリングコードを取得する
- フォームエディターで、
<> Renderを選択します。 - Copy を選択します。

Post Login Action を作成する
- Auth0 Dashboard > Actions > Flows > Login に移動します。
-
+ アイコンを選択し、Build from scratch を選択します。
- 名前:
Render Progressive Profile Formと入力します。 - トリガー:
Login / Post Loginを選択します。 - ランタイム: 推奨バージョンを選択します。
- 名前:
- Create を選択します。
- Code editor から既存のコードを削除します。
- フォームの埋め込みコードを Code editor に貼り付けます。
-
フォームを表示する条件ロジックを定義するようにコードを編集します。
上記のコード例では、ユーザーのログイン回数が 2 回を超えており、ユーザーメタデータの company_name プロパティと job_title プロパティが設定されていない場合にフォームを表示します。
- デプロイ を選択します。
-
Render Progressive Profile Form Action を Login フローにドラッグ&ドロップします。

- Apply を選択します。
実装をテストする
- ログイン回数が 2 回を超えていて、
user_metadata属性のcompany_nameとjob_titleに値が設定されていない既存のユーザーでログインします。 - Login フローの post-login Action によってフォームが表示され、情報の入力を求められます。
- Auth0 Dashboard > User Management > Users を選択し、対象のユーザーを見つけて、
user_metadata属性のcompany_nameとjob_titleに情報が含まれていることを確認します。