> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# パスワードレスデータベース接続の暗黙的なサインアップとログイン

> 既存アカウントの有無にかかわらず、ワンタイムコードを使用してパスワードレスフローを完了できる、暗黙的なサインアップとログインについて説明します。

export const ReleaseStageNotice = ({feature, stage, plans, contact, terms}) => {
  const stageTextMap = {
    "beta": "Beta",
    "ea": "早期アクセス"
  };
  const stageText = stageTextMap[stage] || "製品リリース段階";
  const prsLink = "/docs/troubleshoot/product-lifecycle/product-release-stages";
  const linkify = (text, url) => {
    return <a href={url} target="_blank" rel="noreferrer" class="link">{text}</a>;
  };
  const includeDetails = (plans, contact, terms) => {
    const hasDetails = terms || plans || contact;
    if (!hasDetails) return null;
    return <span data-as="p">
            {plans && <>この機能は{linkify(`${plans}プラン`, "https://auth0.com/pricing")}でご利用いただけます。 </>}
            {contact && "参加をご希望の場合は、" + contact + "までお問い合わせください。 "}
            {terms && <>この機能を使用することにより、Oktaの該当する無料トライアル規約および{linkify("Master Subscription Agreement", "https://www.okta.com/legal")}に同意したものとみなされます。</>}
        </span>;
  };
  return <Warning>
            <span data-as="p">
                <strong>{feature}機能は現在、{linkify(stageText, prsLink)}です。</strong>
            </span>

            {includeDetails(plans, contact, terms)}
        </Warning>;
};

<ReleaseStageNotice feature="パスワードレスデータベース接続での暗黙的なサインアップとログイン" stage="ea" contact="support" terms="true" />

暗黙的なサインアップとログインを使用すると、ユーザーはアカウントの有無にかかわらずパスワードレスフローを進められます。ユーザーがワンタイムパスワード (OTP) で認証を完了すると、Universal Login は既存のアカウントにログインさせるか、アカウントがない場合はその場でアカウントを作成するよう促します。**サインアップ**用と**ログイン**用に別々のパスを用意する必要はありません。

次の動作を確認してください。

* **暗黙的なサインアップ**: ユーザーがアカウントに紐付いていない識別子でログインしようとします。OTP の検証後、確認画面が表示され、アカウントを作成できます。
* **暗黙的なログイン**: ユーザーがすでにアカウントに紐付いている識別子でサインアップしようとします。OTP の検証後、「アカウントはすでに存在します」というエラーが表示されることなくログインできます。

<div id="implicit-signup-how-it-works">
  ## 暗黙的なサインアップの仕組み
</div>

1. ユーザーがUniversal Login画面で識別子 (メールアドレスなど) を入力します。
2. Auth0がワンタイムパスワード (OTP) を送信し、ユーザーがそれを入力します。
3. 識別子に対応するアカウントがないため、Auth0は入力された識別子を表示した**アカウントを作成**確認画面を表示します。
4. ユーザーが**確認**を選択すると、Auth0がアカウントを作成し、ユーザーをログインさせます。

ユーザーが**キャンセル**を選択すると、フローの開始時点に戻ります。

Auth0はアカウントを作成する前にOTPを検証するため、入力された識別子は新しいユーザープロファイルで検証済み (`email_verified`または`phone_verified`) としてマークされます。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  [Advanced Customizations for Universal Login (ACUL)](/docs/ja-jp/customize/login-pages/advanced-customizations-for-universal-login)を使用して、確認画面をブランドや文言に合わせてカスタマイズできます。
</Callout>

<div id="implicit-login-how-it-works">
  ## 暗黙的なログイン: 仕組み
</div>

ユーザーがサインアップフローを進めている際、識別子がすでに別のアカウントに属していても、Auth0は「アカウントはすでに存在します」というエラーを返しません。ユーザーがOTPを検証すると、既存のアカウントにログインされます。ユーザーから見ると、どちらのパスから開始したかにかかわらず、フローは問題なく進行します。

<div id="identifier-requirements">
  ## 識別子の要件
</div>

暗黙的なサインアップでは、ユーザーが認証のために指定した 1 つの[識別子](/docs/ja-jp/authenticate/database-connections/flexible-identifiers-and-attributes#flexible-identifiers-and-attributes)に基づいてアカウントが作成されます。これを機能させるには、1 つの識別子だけでユーザーを作成できるよう、接続を設定する必要があります。

| **接続の設定**     | **暗黙的なサインアップの動作**                                  |
| ------------- | -------------------------------------------------- |
| 必須の識別子が 1 つのみ | サポート対象。Auth0 は指定された識別子に基づいてアカウントを作成します。            |
| すべての識別子が任意    | サポート対象。ユーザーがログイン時に指定した識別子に基づいてアカウントが作成されます。        |
| 必須の識別子が複数     | サポート対象外。追加で必要な識別子を指定するには、標準のサインアップフローを完了する必要があります。 |

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  すべてのユーザーが暗黙的なサインアップでセルフサービスを利用できるようにするには、接続で 1 つの識別子を必須にするか、すべての識別子を任意にしてください。
</Callout>

<div id="add-a-passkey-or-password">
  ## パスキーまたはパスワードを追加する
</div>

接続で[パスキー](/docs/ja-jp/authenticate/database-connections/passkeys)および／またはパスワードを有効にすると、ユーザーは確認画面の後にパスキーを追加するか、パスワードを設定できます。これにより、パスワードレスを主な認証方法とするユーザーは、サインアップ時に追加の認証情報を設定して、必要に応じてアカウントのセキュリティを強化できます。

<div id="api-based-configuration">
  ## API ベースの設定
</div>

Auth0 がホストする [Universal Login エクスペリエンス](/docs/ja-jp/authenticate/login/auth0-universal-login/universal-login-vs-classic-login/universal-experience)では、暗黙的なサインアップとログインを利用できます。一方、独自の UI をレンダリングするアプリでは、Authentication API を使用して同じ機能をプログラムから利用できます。`POST /otp/challenge` に `allow_signup: true` を指定すると、検証済みの OTP によるアカウント作成を許可できます。どちらの場合も、上記と同じ識別子要件が適用されます。詳細については、[データベース接続でのパスワードレスログインに Authentication API を使用する](/docs/ja-jp/authenticate/database-connections/auth-api-passwordless-db-connections)を参照してください。

<div id="default-behavior-on-passwordless-database-connections">
  ## パスワードレスのデータベース接続のデフォルト動作
</div>

暗黙的なサインアップとログインは、Auth0 Universal Loginのデフォルト動作です。以下の条件を満たす場合、パスワードレスオプションを使用するすべての接続に自動的に適用されます。

* 接続でパスワードレス方式 (メールOTP、SMS OTP、または音声OTP) を設定している。
* 接続でSignupが許可されている。
* 接続で必須の識別子が1つのみであるか、すべての識別子が任意である。複数の識別子を必須とする接続では、標準のサインアップフローにフォールバックします。

<div id="actions">
  ## Actions
</div>

暗黙的なサインアップでは接続内に実際のユーザーが作成されるため、標準のサインアップ時に実行されるActionsと同じActionsが実行されます。[Pre-User Registration](/docs/ja-jp/customize/actions/flows-and-triggers/pre-user-registration-flow) と [Post-User Registration](/docs/ja-jp/customize/actions/flows-and-triggers/post-user-registration-flow) のトリガーが実行された後、[Post-Login](/docs/ja-jp/customize/actions/flows-and-triggers/login-flow) が実行されます。暗黙的に作成されたユーザー用に、別途Actionロジックを用意する必要はありません。

<div id="limitations">
  ## 制限事項
</div>

* 複数の識別子が必要な接続では、暗黙的なサインアップはサポートされていません。該当するユーザーは標準のサインアップフローを使用する必要があります。
* 暗黙的なサインアップとログインはUniversal Loginでのみ利用できます。クラシックログインではサポートされていません。

<div id="learn-more">
  ## 詳細情報
</div>

* [データベース接続のパスワードレス認証](/docs/ja-jp/authenticate/database-connections/passwordless-authentication-for-db-connect)
* [Authentication API を使用してデータベース接続でパスワードレスログインを行う](/docs/ja-jp/authenticate/database-connections/auth-api-passwordless-db-connections)
