ユーザー管理
Logto コンソールで管理する
ユーザーの閲覧と検索
Logto コンソールでユーザー管理機能にアクセスするには、コンソール > ユーザー管理 に移動します。そこでは、すべてのユーザーのテーブルビューが表示されます。
テーブルは 3 つのカラムで構成されています:
- ユーザー:ユーザーのアバター、氏名、ユーザー名、電話番号、メールアドレスなどの情報を表示します
- アプリケーションから:ユーザーが最初に登録したアプリケーション名を表示します
- 最新のサインイン:ユーザーの直近のサインイン時刻を表示します。
name
、id
、username
、primary-phone
、primary-email
のキーワードマッピングに対応しています。
ユーザーの追加
コンソールを使って、開発者はエンドユーザーの新しいアカウントを作成できます。そのためには、画面右上の「ユーザー追加」ボタンをクリックします。
Logto コンソールまたは Management API でユーザーを作成する場合(UI からのエンドユーザー自身による登録ではない場合)、少なくとも 1 つの識別子(primary email
、primary phone
、username
)を指定する必要があります。name
フィールドは任意です。
ユーザー作成後、Logto は自動的にランダムなパスワードを生成します。初期パスワードは一度だけ表示されますが、後から パスワードをリセット できます。特定のパスワードを設定したい場合は、Management API の patch /api/users/{userId}/password
を使ってユーザー作成後に更新してください。
入力した識別子(メールアドレス / 電話番号 / ユーザー名) と 初期パスワード はワンクリックでコピーでき、新しいユーザーにこれらの認証情報を簡単に共有してサインイン・利用開始できます。
招待制登録を実装したい場合は、マジックリンクでユーザーを招待する 方法を推奨します。これにより、ホワイトリストに登録されたユーザーのみが自己登録し、自分のパスワードを設定できます。
ユーザープロファイルの閲覧と更新
ユーザーの詳細を表示するには、ユーザーテーブルの該当行をクリックします。これにより「ユーザー詳細」ページに移動し、ユーザーのプロファイル情報を確認できます。内容は以下の通りです:
- 認証 (Authentication) 関連データ:
- メールアドレス(primary_email):編集可能
- 電話番号(primary_phone):編集可能
- ユーザー名(username):編集可能
- パスワード(has_password):ランダムパスワードを再生成できます。「ユーザーパスワードのリセット」を参照してください。
- ソーシャル連携(identities):連携済みのソーシャルアカウントやソーシャル ID を表示します。たとえば、Facebook アカウントでサインインした場合、「Facebook」項目がリストに表示されます。コンソールで連携済みソーシャル ID を削除できますが、新しい連携を代理で追加することはできません。
- エンタープライズシングルサインオン (SSO) 連携(sso_identities):連携済みのエンタープライズ ID を表示します。コンソールで SSO ID の追加や削除はできません。
- 多要素認証 (MFA)(mfa_verification_factor):このユーザーが設定したすべての認証要素(パスキー、認証アプリ、バックアップコードなど)を表示します。要素はコンソールで削除できます。
- パーソナルアクセストークン:パーソナルアクセストークン の作成、表示、名前変更、削除ができます。
- ユーザープロファイルデータ:名前、アバター URL、カスタムデータ、その他 OpenID Connect 標準クレーム(未含分)。これらのプロファイル項目はすべて編集可能です。
ソーシャル連携を削除する前に、ユーザーが他のサインイン方法(別のソーシャル連携、電話番号、メールアドレス、ユーザー名+パスワードなど)を持っていることを必ず確認してください。他のサインイン方法がない場合、ソーシャル連携を削除するとアカウントに再度アクセスできなくなります。
ユーザーアクティビティの閲覧
ユーザーの最近のアクティビティを確認するには、「ユーザー詳細」ページの「ユーザーログ」サブタブに移動します。ここでは、ユーザーが行ったアクション、結果、関連アプリケーション、実行時刻などがテーブルで表示されます。
テーブル行をクリックすると、ユーザーログの詳細(IP アドレス、ユーザーエージェント、生データなど)を確認できます。
ユーザーの一時停止
「ユーザー詳細」ページで「三点リーダー」→「ユーザーを一時停止」ボタンをクリックします。
ユーザーが一時停止されると、そのユーザーはアプリにサインインできなくなり、現在のアクセストークンの有効期限後は新しいアクセストークンも取得できません。また、このユーザーによる API リクエストも失敗します。
このユーザーを再有効化したい場合は、「三点リーダー」→「ユーザーを再有効化」ボタンをクリックしてください。
ユーザーの削除
「ユーザー詳細」ページで「三点リーダー」→「削除」ボタンをクリックします。ユーザーの削除は元に戻せません。
ユーザーパスワードのリセット
「ユーザー詳細」ページで「三点リーダー」→「パスワードをリセット」ボタンをクリックすると、Logto が自動的にランダムなパスワードを再生成します。
パスワードをリセットした後は、そのパスワードをコピーしてエンドユーザーに送信してください。「パスワードリセット」モーダルを閉じるとパスワードは再表示できません。控え忘れた場合は再度リセットできます。
Logto コンソールではユーザーの特定パスワードを設定できませんが、Management API の PATCH /api/users/{userId}/password
を使って指定できます。
ユーザーのロール管理
ユーザー詳細ページの「ロール」タブで、ロールの割り当てや削除が簡単にできます。詳細は ロールベースのアクセス制御 (RBAC) を参照してください。
ユーザーが所属する組織の確認
Logto は 組織 をサポートしており、そのメンバー管理が可能です。ユーザー詳細から、どの組織に所属しているかを簡単に確認できます。
Logto Management API で管理する
Management API は、Logto バックエンドサービスへのアクセスを提供する API 群です。前述の通り、ユーザー API はこのサービスの重要なコンポーネントであり、幅広いシナリオに対応できます。
ユーザー関連の RESTful API は /api/users
にマウントされています(ユーザーアクティビティ、すなわちユーザーログ /api/logs?userId=:userId
を除く)。
Management API を通じて、高度なユーザー検索、アカウントの一括作成、招待制サインアップ など、さまざまな用途でユーザー管理が可能です。
よくある質問
特定のユーザーに対して特定のアプリケーションへのアクセスを制限するには?
Logto の Omni-sign-in の性質上、認証 (Authentication) 前に特定のアプリケーションへのユーザーアクセスを制限する設計にはなっていません。 ただし、アプリケーション固有のユーザーロールや権限を設計し、API リソースを保護し、ユーザーサインイン後に API アクセス時に権限を検証することは可能です。 詳細は認可 (Authorization):ロールベースのアクセス制御 (RBAC) を参照してください。