前提条件
- Dashboard > Authentication > Database で新しいデータベース接続を作成します。必ず Custom Database ビューを選択し、Use my own database スイッチを有効にしてください。
- データベースをアプリケーションに接続します。データベース接続の設定で Applications ビューを選択します。Applications Using This Connection セクションで、各アプリケーションに対してデータベース接続を有効にします。
シナリオ 1: Gigya から Auth0 にユーザーを移行する
-
Gigya ユーザーをエクスポートします:
Gigya’s IdentitySync を使用して、ターゲット スキーマに合わせてユーザーデータを変換し、エクスポートします。このプロセスの詳細については、Gigya IdentitySync: Using IdentitySync を参照してください。
手順に従って、Gigya データベース内のユーザーデータを正しいスキーマに変換し、変換後のデータを JSON 形式でエクスポートします。 -
Gigya ユーザーを Auth0 にインポートします:
ユーザーは、User Import/Export Extension または Management API のいずれかを使用してインポートできます。
-
User Import/Export Extension: Auth0 Dashboard > Extensions に移動し、User Import / Export 拡張機能を選択してインストールします。拡張機能をインストールしたら、それをクリックしてインポート / エクスポート インターフェイスを開くことができます。
エクスポートした Gigya ユーザーの JSON ファイルを指定されたアップロード領域にドラッグし、先ほど作成したデータベースを選択します。インポートを開始するには、Start Importing Users を選択します。詳細については、User Import/Export Extension を参照してください。 - Management API: Auth0 にユーザーをインポートするジョブを作成します。詳しい手順については、一括ユーザーインポート を参照してください。
-
User Import/Export Extension: Auth0 Dashboard > Extensions に移動し、User Import / Export 拡張機能を選択してインストールします。拡張機能をインストールしたら、それをクリックしてインポート / エクスポート インターフェイスを開くことができます。
シナリオ 2: Okta から Auth0 へユーザーを移行する
- ユーザーのインポートを有効にする: Auth0 Dashboard > Authentication > Database に移動し、データベース接続を選択します。Settings で、Import Users to Auth0 オプションを有効にします。
-
Login script を作成します。Login スクリプトは、ユーザーがログインを試みても、そのアカウントが Auth0 データベースに見つからない場合に実行されます。
usernameおよびpasswordパラメーターにメールアドレスとパスワードを渡して、Okta の Primary Authentication エンドポイントを呼び出すスクリプトを作成する必要があります。 認証が成功すると、Okta は Authentication Transaction object を返します。このオブジェクトには、embedded resources 内に ユーザーのユーザープロファイル が含まれています。その後、ユーザー情報を抽出して、コールバック関数で Auth0 に渡すことができます。
データベース接続の Custom Database ビューで、Database Action Scripts を探し、Login を選択します。スクリプトの上にある Try ボタンをクリックして、スクリプトが正しく動作するかどうかをテストします。 -
Get User スクリプトを作成します: Get User スクリプトは、ユーザーがパスワードのリセットを試みたものの、Auth0 データベースにそのアカウントが見つからない場合に実行されます。ユーザーのメールアドレスを
loginパラメーターとして渡し、Okta の Get User with Login エンドポイントを呼び出すスクリプトを作成する必要があります。 また、API トークンを作成する必要があります。このトークンは、Authorizationヘッダーでこのエンドポイントに渡す必要があります。 成功すると、Okta はユーザー情報を含む User object を返します。ここでも、ユーザー情報を抽出してコールバック関数で Auth0 に渡すことができます。
データベース接続のCustom Databaseビューで、Database Action Scriptsを見つけ、Get Userを選択します。スクリプトが動作するかどうかを確認するには、スクリプト上部の Try ボタンをクリックします。 - カスタムデータベース接続をテストします。接続を試す をクリックします。Auth0 Lock widget が表示されます。Okta ユーザーのメールアドレスとパスワードを入力し、ログイン をクリックします。接続が正常に機能していることを示す Web ページと、ユーザー情報が表示されます。
- 新しくインポートされたユーザーを確認するには、Auth0 Dashboard > ユーザー管理 > ユーザーを開きます。
シナリオ 3: Stormpath から Auth0 にユーザーを移行する
- ユーザーのインポートを有効にする: Auth0 Dashboard > Authentication > Database に移動し、データベース接続を選択します。Settings で、Import Users to Auth0 オプションを有効にします。
- 接続でアプリケーションを有効にする: Applications ビューを選択します。データベース接続を使用するアプリケーションを有効にします。
-
Login script を作成します。Login スクリプトは、ユーザーがログインを試みても、そのアカウントが Auth0 データベースに見つからない場合に実行されます。
usernameとpasswordパラメーターにユーザーの認証情報を渡し、Stormpath の API を呼び出してユーザーを認証するスクリプトを作成する必要があります。
認証に成功すると、Stormpath からのレスポンスにユーザーアカウントの URL が含まれます。次に、そのアカウント URL に対して 2 回目のリクエストを実行し、ユーザー情報を取得します。取得したユーザー情報を抽出し、コールバック関数で Auth0 に渡すことができます。スクリプトをテストして動作するかどうかを確認するには、スクリプトの上にある Try ボタンをクリックします。 -
Get User script を作成します: Get User スクリプトは、ユーザーがパスワードリセットを試みた際に、そのアカウントが Auth0 データベース内に見つからない場合に実行されます。Stormpath API の
/accountsエンドポイントを呼び出し、ユーザーのメールアドレスをemailパラメーターとして渡すスクリプトを作成する必要があります。 成功すると、Stormpath はユーザー情報を返します。その情報を抽出し、コールバック関数を通じて Auth0 に渡すことができます。スクリプトの上にある Try ボタンをクリックして、スクリプトが正しく動作するかどうかを確認します。 - カスタムデータベース接続をテストするには、[接続を試す] をクリックします。Auth0 Lock ウィジェットが表示されます。Stormpath ユーザーのメールアドレスとパスワードを入力し、[ログイン] をクリックします。接続が正しく機能していることを示す、ユーザー情報を含む Web ページが表示されます。
- 新しくインポートされたユーザーを確認するには、Dashboard > ユーザー管理 > ユーザーに移動してください。