Okta

オクタ

はじめに

Auth0では、様々なソーシャルIDプロバイダー(Google, Facebook等)及びエンタープライズIDプロバイダー(Okta等)とのユーザ連携に対応しています。デフォルトでは、それぞれのIDプロバイダーのアカウントが同じユーザであっても、異なるユーザと認識されてしまいます。例えば、あるユーザがAuth0ユーザデータベースでサインアップした後、同一メールアドレスのGoogleアカウントで再度ログインした場合、Auth0では2つの異なるユーザとして登録されてしまいます。

そこで、Auth0の「アカウントリンク」機能を用いることで、それぞれのIDプロバイダーのアカウントを1ユーザとして名寄せすることができます。アカウントリンクを利用するメリットは、以下が挙げられます。

  • ユーザはプロバイダー毎に個別のユーザプロファイルを作成せずに、任意のIDプロバイダーでログイン可能
  • 一度登録したユーザは、既存のユーザプロファイルを引き継いだ上で、新しいIDプロバイダーやパスワードレスログインを使用可能
  • パスワードレスを用いて登録したユーザは、より詳細なユーザプロファイル情報を持つ任意のIDプロバイダーのアカウントに紐づけることが可能
  • アプリケーション側は、各IDプロバイダーを保持するユーザ情報を取得可能

Auth0で実現可能なアカウントリンクの方法はいくつかありますが、本ページでは、ユーザがログインしたタイミングで、同一メールアドレスを持つユーザが他に存在する場合に連携を促す「提案型アカウントリンク」について、設定例と実際の動作をご紹介します。

前提

本ページ内の動作確認は、Auth0連携済のWebアプリケーションを対象とします。

本ページに記載する機能及び設定に関する内容は、2022年10月現在の情報となります。

設定方法

  • Auth0管理画面において、[Extensions]をクリック
  • All Extensionsタブにおける[Auth0 Account Link]をクリック
設定方法
3. Auth0 Account Linkの設定画面が表示されるので、[Install]をクリック
設定方法
4. Installed Extensionsタブに[Auth0 Account Link]が追加されたことを確認
  ※ここでアカウントリンクを促す画面のテキストなどを変更できます
設定方法
5. [Auth Pipeline] > [Rules]をクリック
6. [auth0-account-link-extension]というRuleが追加及び有効化されていることを確認
  ※ここでアカウントリンク処理のスクリプト確認及びカスタマイズができます
設定方法

動作確認

Auth0ユーザデータベースでユーザ登録後、同一メールアドレスを持つGoogleアカウントでログインし、アカウントリンクを促す画面が表示されるかを確認します。

1. Auth0ユーザデータベースでユーザ登録を実施
  ※Authentication > Authentication Profileの「Try」からログインテスト可能
動作確認
2. Auth0管理画面で、Auth0ユーザデータベースのユーザとして登録されたことを確認
動作確認
3. 同一メールアドレスを持つGoogleアカウントでログインを実施
  ※Authentication > Authentication Profileの「Try」からログインテスト可能
動作確認
4. アカウントリンクを促す画面が表示されることを確認し、[CONTINUE]をクリック
動作確認
5. Auth0へのログイン画面が表示されるので、1.でログインしたユーザでログイン
動作確認
6. Auth0管理画面で、2.で確認したAuth0ユーザデータベースのユーザのAccounts Associated欄に[Google / Gmail]と表示されていることを確認
  ※アカウントリンク成功
動作確認

補足(アカウントリンク画面のカスタマイズ)

アカウントリンク画面は、Auth0管理画面の[Extensions]からカスタマイズできます。画面表示テキストの日本語化及びタイトルの変更方法をご紹介します。

  • Auth0管理画面で[Extensions]をクリック
  • Installed Extensionsタブの[Auth0 Account Link]をクリック
補足(アカウントリンク画面のカスタマイズ)
3. アカウントリンク画面の設定ページが表示されるので、画面下部へ移動
補足(アカウントリンク画面のカスタマイズ)
4. Widget SettingsでTitleを任意の文字(例: アカウントリンク等)に、Languageを[Japanese]へ変更し、[SAVE CHANGES]をクリック
補足(アカウントリンク画面のカスタマイズ)
5. 「Success! Your changes has been successfully saved.」と表示されることを確認
補足(アカウントリンク画面のカスタマイズ)
6. アカウントリンクを促す画面が、下記の様に変更されたことを確認
補足(アカウントリンク画面のカスタマイズ)

まとめ

Auth0では、複数のIDプロバイダーに対応しており、柔軟にアカウントをリンクできます。Auth0のアカウントリンク機能を用いることで、ユーザ側に一貫性のあるユーザ体験を提供でき、管理者側としても不要なユーザ数の削減やユーザ情報の集約など、メリットがあります。無償のAuth0トライアル環境でも利用できますので、ぜひアカウントリンク機能をお試しください。

お問い合わせ・資料請求

株式会社マクニカ  Okta 担当

月~金 8:45~17:30