メインコンテンツまでスキップ

公開登録なし & 招待制のみ

特定の状況では、アプリケーションのユーザー登録を制限したい場合があります。Logto では、匿名ユーザー登録を無効にし、管理者から招待されたユーザーのみがサインインできるように制限できます。

ユーザー登録の無効化

エンドユーザー登録を無効にするには、次の手順に従ってください:

  1. コンソール > サインイン体験 > サインアップとサインイン

    ページに移動します。
  2. 詳細オプション セクションで、ユーザー登録を有効にする スイッチをオフにしてユーザー登録を無効にします。(デフォルトでは有効)

ユーザー登録を無効にすると:

  • サインインページから「アカウント作成」リンクが削除されます。
  • サインアップページが無効になり、アクセスしたユーザーはサインインページにリダイレクトされます。
  • ソーシャルおよびエンタープライズ SSO のサインアップフローも無効になります。未登録のソーシャルアカウントを持つユーザーは、ソーシャル認証後に「アカウントが見つかりません」エラーを受け取ります。
  • システム内に一致するメールアドレスまたは電話番号アカウントがあるユーザーについては、ソーシャルリンクアカウント機能は引き続き利用可能です。

招待制のみのサインアップフローの実装

Logto には組み込みの招待フローはありませんが、Logto の users Management API を利用することで、簡単に招待制のみのサインアップフローを実装できます。

  1. コンソール > サインイン体験 でユーザー登録を無効にします。

  2. コンソール > サインイン体験 に移動し、「ユーザー登録を有効にする」をオフにして公開登録を閉じます。

  3. 招待したいユーザーのメールアドレスを収集します(例:ウェブサイトや既存ユーザーからの推薦など)。

  4. マジック招待リンクガイドに従って 作成・送信します(ワンタイムトークンのリクエスト、マジックリンクの作成、Logto SDK で認証をトリガー)。
    注意:招待リンクの有効期限を設定してください。リンクは最低 1 日有効にすることを推奨します。ワンタイムトークンを生成するには、以下のリクエストボディを使用します:

    {
    "email": "[email protected]",
    "expiresIn": 172800 // オプション。デフォルトは 600(10 分)
    }
  5. マジックリンクをユーザーのメールに送信します(例: https://yourapp.com/landing-page?type=registrationInvitation&token=YHwbXSXxQfL02IoxFqr1hGvkB13uTqcd&[email protected] )。メールテンプレートはカスタマイズ可能です。例:

    招待制登録メールテンプレート

    ユーザーが「招待を受け入れる」をクリックすると、公開登録が無効でも自動的にサービスに登録されます。これを「ターゲットユーザー招待」と呼びます。

オプション 2: Management API でユーザーを招待・作成

  1. コンソール > サインイン体験 でユーザー登録を無効にします。
  2. アプリケーション内にカスタムの招待ベースユーザー登録フォームを作成します。
  3. ユーザーに一意の招待リンク付きの招待メールを送信します。
  4. ユーザーが登録リンクをクリックした際、Logto Management API > Create user を呼び出してユーザーアカウントを作成します。
  5. ユーザーアカウント作成後、Logto のサインインまたはパスワードリセットページにリダイレクトして登録を完了させます。サインインプロセスをスムーズにするため、最初の画面やユーザーのメールアドレスの事前入力方法については 認証パラメーター を参照してください。

オプション 3: 手動登録時にユーザーへ通知

  1. Logto コンソールでユーザー登録を無効にします。
  2. コンソール > ユーザー管理 または Management API でユーザーアカウントを手動作成します。
  3. アカウント作成をメールでユーザーに通知します。
  4. ユーザーを Logto のサインインまたはパスワードリセットページにリダイレクトして登録を完了させます。サインインプロセスをスムーズにするため、最初の画面やユーザーのメールアドレスの事前入力方法については 認証パラメーター を参照してください。

事前登録アカウントのユーザー体験

事前登録アカウント(プロビジョニングユーザーとも呼ばれます)。オプション 2 およびオプション 3 では、ユーザーアカウントが Management API を通じて事前に作成されます。エンドユーザーは、その後初めて製品にサインインします。

ユーザー登録が無効な場合、サインアップページにアクセスしたユーザーはサインインページにリダイレクトされます。管理者または Management API(オプション 2 または 3)でユーザーアカウントが作成されている場合、設定したサインイン・サインアップ方法によってユーザーのサインイン体験が異なります:

  • 認証コードによるメールアドレスまたは電話番号でのサインインメールアドレス または 電話番号 でユーザーアカウントを作成します。メールまたは電話番号認証コードサインイン方法を有効にします。ユーザー作成後、認証コード方式で直接サインインできます。
  • 特定のメールアドレスまたは電話番号によるソーシャルサインイン:ソーシャルアカウントに紐づく メールアドレス または 電話番号 でユーザーアカウントを作成します。特定のソーシャルプロバイダーのソーシャル接続を作成・有効化します。自動アカウント連携 機能を有効にし、メールアドレスまたは電話番号が一致する場合にソーシャルアイデンティティとユーザーアカウントを自動的に連携します。ユーザー作成後、該当するソーシャルアカウントで直接サインインできます。
  • ユーザー名 / メールアドレス / 電話番号 + パスワードユーザー名メールアドレス、または 電話番号 でユーザーアカウントを作成し、パスワードベースのサインイン用識別子を有効にします。
    • 事前設定パスワードあり:アカウント作成時にパスワードを設定し、安全にユーザーへ共有します。ユーザーはユーザー名・メールアドレス・電話番号と事前設定パスワードで直接サインインでき、必要に応じてパスワードをリセットできます。
    • 事前設定パスワードなし:パスワードなしでアカウントを作成し、アカウント有効化時にユーザーへパスワード設定を促します。(パスワードリセットフローには メールアドレス または 電話番号 が必要です。)ユーザー作成後、メールアドレスまたは電話番号を事前入力した状態でパスワードリセットページにリダイレクトします。詳細は 認証パラメーター を参照してください。ユーザーが新しいパスワードを設定すると、ユーザー名・メールアドレス・電話番号と新しいパスワードで直接サインインできます。
マジックリンク(ワンタイムトークン)