Skip to main content
ユーザーファイルには、JSON 形式のユーザー情報の配列を含める必要があります。
一括インポートのファイルサイズ上限は 500KB です。データがこのサイズを超える場合は、複数回に分けてインポートを実行する必要があります。

ユーザー JSON スキーマ

次の JSON スキーマは、有効なユーザーを定義します。
JSON スキーマの詳細については、jsonschema.orgを参照してください。

プロパティ

次のプロパティを使用してユーザーをインポートできます。 app_metadatauser_metadata の詳細については、ユーザープロフィールにおけるメタデータの仕組みを理解する を参照してください。

アプリメタデータ

user.app_metadata オブジェクトには、次のプロパティを含めないでください
  • __tenant
  • _id
  • blocked
  • clientID
  • created_at
  • email_verified
  • email
  • globalClientID
  • global_client_id
  • identities
  • lastIP
  • lastLogin
  • loginsCount
  • metadata
  • multifactor_last_modified
  • multifactor
  • updated_at
  • user_id

カスタムパスワードハッシュ

ユーザーのパスワードハッシュが別のアルゴリズムで作成されている場合は、user.password_hash プロパティの代わりに user.custom_password_hash オブジェクトを使用できます。なお、このフィールドと password_hash は相互に排他的です。 user.custom_password_hash オブジェクトには、次のプロパティがあります。

カスタムパスワードハッシュを更新する

一括インポート中に、ユーザーが最初にインポートした custom_password_hash を使ってログインしていない場合は、custom_password_hash を更新できます。たとえば、以下の JSON を custom_password_hash に異なる値を指定して /api/v2/jobs/users-imports エンドポイントに 2 回送信できます。2 回目の送信時には、upsert フラグを true に設定してください。
browserling.com の Bcrypt Password Generator を使用して、bcrypt のパスワードハッシュを生成できます。

サポートされているハッシュアルゴリズム

Auth0 は現在、次の方式でハッシュ化されたユーザーのパスワードのインポートをサポートしています。 custom_password_hash を指定する際は、以下のセクションを参照してください。

Argon2

algorithmargon2 に設定されている場合:
  • hash.encodingutf8 でなければなりません。
  • hash.salt は使用できません。
  • hash.value は、GitHub の P-H-C / phc-string-format で規定されている PHC 文字列形式である必要があります。また、GitHub の Auth0 / magic で指定されている要件にも準拠している必要があります。
  • hash.value には、base64 エンコードされた ソルト (PHC ドキュメントで規定されているとおり) を含める必要があります。

bcrypt

algorithmbcrypt に設定されている場合:
  • hash.encodingutf8 である必要があります。
  • hash.salt は、ソルト のエンコーディングおよび位置とあわせて使用できます。
  • hash.value には、次のいずれかのプレフィックスが含まれている必要があります。
    • $2a$
    • $2b$
    • $2y$
    現時点では、$2$$sha1$$2x$ などの他のプレフィックスはサポートされていません。
たとえば、次の値は、コストパラメーター 10 を使用して文字列 hello から生成されたものです。 $2b$10$nFguVi9LsCAcvTZFKQlRKeLVydo8ETv483lkNsSFI/Wl1Rz1Ypo1K bcrypt アルゴリズムは、パスワードハッシュの計算時または比較時に最大 72 バイトの入力を処理します。また、salt.value の長さもこの 72 バイトの入力上限に含まれます。72 バイトの上限を超える入力は切り詰められます。たとえば、ソルト が 10 バイトを使用する場合、ハッシュ化または比較に使用できるパスワードの最大長は 62 バイトです。 この短縮後の上限を超えるパスワードは切り詰められるため、パスワード強度が低下したり、ハッシュ衝突が発生したりする可能性があります。ハッシュ化する前に、必ずパスワードの長さを検証してください.

HMAC

algorithmhmac に設定されている場合:
  • hash.encodinghex または base64 のいずれかである必要があります。
  • hash.digest は必須であり、次のいずれかである必要があります。
    • md4
    • md5
    • ripemd160
    • sha1
    • sha224
    • sha256
    • sha384
    • sha512
    • whirlpool
  • hash.key.value は必須です。
  • hash.key.encodingbase64hexutf8 のいずれかである必要があります。

LDAP

algorithmldap に設定されている場合:
  • hash.encodingutf8 でなければなりません。
  • ソルト は使用できません。
  • hash.value は、IETF Datatracker の RFC-2307 section-5.3 で定義されている形式に準拠している必要があります。
  • スキームは md5|smd5|sha*|ssha* のいずれかである必要があります。詳細については こちら を参照してください。
  • crypt スキームは、システムや実装によって動作が異なるため サポートされていません。詳細については、Open LDAP Admin Guide - 14.4.2. CRYPT password storage scheme を参照してください。

MD または SHA

algorithmmd4md5sha1sha256、または sha512 に設定されている場合:
  • hash.encodinghex または base64 のいずれかである必要があります。

PBKDF2

algorithmpbkdf2 に設定されている場合:
  • hash.encodingutf8 である必要があります。
  • hash.salt は使用できません。
  • hash.value は、GitHub の P-H-C / phc-string-format で規定されている PHC 文字列形式である必要があります。
  • hash.value には、B64 エンコードされた ソルト (PHC ドキュメントで指定されているとおり、パディング文字 = を除いた base64) を含める必要があります。
  • hash.value には i (反復回数) および l (keylen) パラメーターを含める必要があります。これらのパラメーターを省略した場合、デフォルトで i=100000 および l=64 が使用されます。
  • idpbkdf2-<digest> 形式 (pbkdf2-sha512pbkdf2-md5 など) である必要があります。サポートされているダイジェストは次のとおりです。
    • RSA-MD4
    • RSA-MD5
    • RSA-MDC2
    • RSA-RIPEMD160
    • RSA-SHA1
    • RSA-SHA1-2
    • RSA-SHA224
    • RSA-SHA256
    • RSA-SHA384
    • RSA-SHA512
    • md4
    • md4WithRSAEncryption
    • md5
    • md5WithRSAEncryption
    • mdc2
    • mdc2WithRSA
    • ripemd
    • ripemd160
    • ripemd160WithRSA
    • rmd160
    • sha1
    • sha1WithRSAEncryption
    • sha224
    • sha224WithRSAEncryption
    • sha256
    • sha256WithRSAEncryption
    • sha384
    • sha384WithRSAEncryption
    • sha512
    • sha512WithRSAEncryption
    • ssl3-md5
    • ssl3-sha1
    • whirlpool

scrypt

algorithmscrypt に設定されている場合:
  • hash.encodinghex または base64 のいずれかである必要があります。
  • keylen パラメーターは必須です。
  • cost パラメーターは省略可能です。指定しない場合、デフォルト値は 16384 です。
  • blockSize パラメーターは省略可能です。指定しない場合、デフォルト値は 8 です。
  • parallelization パラメーターは省略可能です。指定しない場合、デフォルト値は 1 です。

MFA ファクター

user.mfa_factors 配列には、ユーザーの 登録情報が含まれます。詳細については、Auth0 の多要素認証 を参照してください。登録情報をインポートすると、インポート後にユーザーが MFA に再登録する必要がなくなります。サポートされている登録タイプは次のとおりです。

基本的な例

次の内容を含むファイルは有効です。

カスタムパスワードハッシュの例

ハッシュが指定されたユーザーの例:

MFA ファクターの例

user.mfa_factors 配列では、ユーザーの MFA 登録情報を指定できます。サポートされている登録タイプは次のとおりです。
  • 電話番号: SMS ベースの認証に使用します。
  • TOTP: MFA アプリ (Google Authenticator、Microsoft Authenticator、Authy、1Password、LastPass) で使用する OTP シークレットです。
  • メールアドレス: メールベースの認証に使用します。
MFA ファクターを持つユーザーの例をいくつか示します。

詳しく見る