Skip to main content
Create スクリプトでは、ユーザー作成時に呼び出される定義済み関数を実装します。この関数名は create にすることを推奨します。 このスクリプトは任意です。有効にすると、ユーザーが からサインアップした場合、または か Auth0 を通じて作成された場合に、Auth0 は外部データベース内に対応するユーザーレコードを作成するため、このスクリプトを実行します。 Auth0 でユーザーが作成されると、Auth0 は一連のスクリプトを呼び出します。
  1. Get User: ユーザーが Auth0 または外部データベースにまだ存在しないことを確認します。
  2. Create: 外部データベースにユーザーを作成します。
  3. Login: ユーザーが正常に作成されたことを確認します。

Create 関数

create 関数では、次の処理を行う必要があります。
  • ユーザーのユーザープロファイルデータを外部データベースのAPIに送信する。
  • ユーザーの作成処理が失敗した場合は、エラーを返す。

定義

create 関数は2つのパラメータを受け取り、コールバック関数を返します。
これは、create 関数の実装方法を示す擬似的なJavaScriptの例です。

暗号化

データ漏洩のリスクを防ぐため、bcrypt などの暗号学的ハッシュライブラリを使用してパスワード値をハッシュ化します。暗号化されていないパスワード認証情報をログに記録、保存、転送しないでください。 例:

コールバック関数

callback 関数は 1 つのパラメータを受け取り、関数を返します。

定義

ValidationError 型オブジェクト

ValidationError カスタムエラー型オブジェクトを使用すると、テナントログに表示されるデータを渡すことができます。 ValidationError コンストラクタは、最大 2 つのパラメータを受け取ります。

成功を返す

ユーザー作成処理が成功した場合は、コールバック関数を呼び出し、error パラメータに null を渡します:

エラーを返す

エラーが発生した場合は、コールバック関数を呼び出し、関連するエラー情報を error パラメータに渡します。 たとえば、errorCode パラメータに user_exists を指定してエラーを返すことができます。
その場合、Auth0 は fs テナントログイベントを記録します。

User オブジェクトのパラメータ

user オブジェクト パラメータには、ユーザー作成プロセスに由来する、あらかじめ定義された一連のプロパティが含まれます。

username プロパティ

カスタムデータベース接続で Requires Username 設定が有効になっている場合、Login スクリプトと Get User スクリプトは username プロパティに対応している必要があるため、これを外部データベースに保存しておく必要があります。

ユーザーとアプリのメタデータ

user_metadataapp_metadata のプロパティは、外部データベースに保存する必要はありません。Auth0 が内部的に作成するユーザープロファイルのレコードの一部として、これらの値は自動的に保存されます。

カスタムのサインアップフィールド

サインアップ時にカスタムフィールドを作成して使用すると、それらはuserオブジェクトに含まれます。例:

言語別のスクリプト例

Auth0 では、次の言語/テクノロジー向けのサンプルスクリプトを提供しています。

トラブルシューティング

外部ユーザーストアまたは Auth0 のいずれかでユーザーを作成できない場合:
  1. Actions リアルタイムログconsole.log() の出力を確認します。
  2. レガシーデータベースでユーザーを見つけ、必要に応じて削除します。Auth0 に不完全なユーザー状態が残っている場合は、Management API の ユーザーを削除 エンドポイントまたは 接続ユーザーを削除 エンドポイントを使用します。
  3. インポートモードが無効になっていることを確認してから、Create スクリプトを設定します。