Okta CIC(Auth0)によるProgressive Profiling実現
はじめに
Progressive Profilingとは、会員登録画面等において、段階的にユーザ情報を収集する手法です。
段階的に情報入力を求め、ユーザへの回答負担を減らすことで、回答率の向上及びより多くのユーザ情報収集を期待できます。また、回答が面倒等の理由で、ユーザが登録をやめてしまうことを回避し、ユーザの離脱率を改善することも期待できます。
例) ログイン回数に応じた段階的なユーザ情報入力フォームの提示
Okta CIC(Auth0)では、Actions機能を利用することで、Progressive Profilingを容易に実現できます。ユーザのログイン回数に応じた入力フォームの提示有無、フォーム内容の変更等、柔軟な対応ができます。
本ページでは、ログイン回数に応じた入力フォームの表示について、実現方法と動作例をご紹介します。なお、入力フォームの表示には、Glitchを利用します。
前提
本ページ記載の機能及び設定に関する内容は、2023年9月現在の情報となります。
設定概要
- Okta CIC事前準備
- ユーザ作成
- Okta CIC連携アプリケーション作成
- Glitch設定
- アプリケーション作成
- Okta CICアプリケーションとの連携用情報取得 (Okta CIC設定にて利用)
- Okta CICアプリケーションとの連携用情報登録
- Okta CIC設定
- Action作成1:初回ログイン時向け
・ログイン操作後における初回ログイン時向けフォームへのリダイレクト
・フォーム入力情報を保管 (ユーザ情報:user_metadata, 回答状況:app_metadata) - Action作成2:3回目のログイン時向け
・ログイン操作後における3回目のログイン向けフォームへのリダイレクト
・フォーム入力情報を保管 (ユーザ情報:user_metadata, 回答状況:app_metadata)
- Action作成1:初回ログイン時向け
設定例
Okta CIC事前準備
- ユーザ作成
ログイン動作確認用ユーザをOkta CIC上に作成します。
- Okta CIC連携アプリケーション作成
Okta CICを介して認証を行うアプリケーションを用意します。サンプルアプリケーションの利用及びOkta CICとの連携に必要となる設定は、Auth0とサンプルアプリケーションの連携設定方法をご確認ください。
Glitch設定
- アプリケーション作成
- シークレットウィンドウにて、Glitch側で用意されたフォーム表示用アプリケーションのテンプレートにアクセス ※Okta社作成のアプリケーションを活用
https://glitch.com/edit/#!/okta-cic-redirect-actions - 画面右上の[Remix]をクリック
- 左上のプロジェクト名が変更されたことを確認
- Okta CICアプリケーションとの連携用情報取得 (Okta CIC設定にて利用)
- ページ最下部の[TERMINAL]をクリック
- 以下コマンドを実行し、APP_SECRET_KEYとして利用するためのランダム文字列を生成 (Okta CIC設定で利用)
> openssl rand -hex 32 - [Share]をクリック
- [Live site]欄のURLをコピー (Okta CIC設定で利用)
- Okta CICアプリケーションとの連携用情報登録
- [.env]をクリック
- Okta CICテナント及び連携アプリケーション設定情報を入力
- AUTH0_DOMAIN:Okta CICテナントのドメイン名
- AUTH0_CLIENT_ID:Okta CICアプリケーション設定のClient ID値
- AUTH0_CLIENT_SECRET:Okta CICアプリケーション設定のClient Secret値
- APP_SECRET_KEY:前手順で生成したランダム文字列
Okta CIC設定
- Action作成1:初回ログイン時向け
- Okta CIC管理画面にて、[Actions] > [Library]をクリック
- [Build Custom]をクリック
- 作成するAction名、Actionのトリガ、実行環境を選択し、[Create]をクリック
- Secrets設定を追加
- Key:SESSION_TOKEN_SECRET
Value:Glitch設定で生成したAPP_SECRET_KEY値 - Key:FORM_URL
Value:Glitch設定でコピーしたGlitchリンク 例) https://Glitchプロジェクト名/prog/universal
- コードエディタにて、処理ロジックを記載 (JavaScript記述)
※awhitmana0/cic-redirect-actionsを活用
- [Deploy]をクリック
- 作成したActionが正常にDeployされたことを確認
- [Actions] > [Flows]をクリック
- 作成したActionを組み込むFlowとして、[Login]を選択
- 作成したActionをドラッグ&ドロップでFlow内に組み込み
- [Apply]をクリック
- 正常に反映されたことを確認
- Action作成2:3回目のログイン時向け
- 「Action作成1」①~④の手順と同様に、Actionを新規作成
- コードエディタにて、処理ロジックを記載 (JavaScript記述)
※awhitmana0/cic-redirect-actionsを活用
- [Deploy]をクリックし、作成したActionが正常にDeployされたことを確認
- 「Action作成1」⑧~⑫と同様に、作成したActionをFlow内に組み込み、正常に反映されたことを確認
動作例
初回ログイン時の挙動確認
- ログイン時の操作が以下となることを確認
- ログイン認証後、初回ログイン時用のフォームに遷移
- フォームを入力し、[登録]をクリック
- 対象のアプリ画面へ遷移
- ユーザ登録情報の確認
- Okta CIC管理画面にて、[User Management] > [Users] > ログインしたユーザを選択
- user_metadata及びapp_metadataに、フォーム入力情報が追加されたことを確認
3回目ログイン時の挙動確認
- ログイン時の操作が以下となることを確認
- ログイン認証後、初回ログイン時用のフォームに遷移
- フォームを入力し、[登録]をクリック
- 対象のアプリ画面へ遷移
- ユーザ登録情報の確認
- Okta CIC管理画面にて、[User Management] > [Users] > ログインしたユーザを選択
- user_metadata及びapp_metadataに、3回目ログイン時のフォーム入力情報が追加されたことを確認
おわりに
本ページでは、Okta CICでのProgressive Profilingの実現方法をご紹介しました。
Actions機能を活用することで、フォームへのリダイレクト条件や、フォーム上で表示する内容の変更等、ご要件に合わせた柔軟な対応を採ることができます。無償のOkta CICトライアル環境においても、Progressive Profilingの実現をお試しいただけます。
Okta CICによるProgressive Profilingの実現にご興味ある方は、是非弊社までお問合せください。
参考
お問い合わせ・資料請求
株式会社マクニカ Okta 担当
- TEL:045-476-2010
- E-mail:okta@macnica.co.jp
平日 9:00~17:00