ユーザー メタデータの読み取り
Overview
Atlas App Services は、一意の ID とユーザーを説明する追加のメタデータを含むユーザー オブジェクトを使用して、内部的に各アプリケーション ユーザーを表します。 ユーザー オブジェクトにはアクセスできます。
App Services UI でユーザー データを表示します。
%%user
展開を含む ルール式 内。Android 、 iOS 、 Node 、 React Native 、および.NETクライアント アプリケーションでは、Realm SDK を使用します。
スキーマ
ユーザー オブジェクトの形式は次のとおりです。
{ "id": "<Unique User ID>", "type": "<User Type>", "data": { "<Metadata Field>": <Value>, ... }, "custom_data": { "<Custom Data Field>": <Value>, ... }, "identities": [ { "id": <Unique Identity ID>, "provider_type": "<Authentication Provider>", "data": { "<Metadata Field>": <Value>, ... } } ] }
フィールド | タイプ | 説明 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| string | ユーザーを一意に識別するObjectIdの string 表現。 | ||||||||||||||||
| string | ユーザーのタイプ。 次のタイプが利用可能です。
| ||||||||||||||||
| ドキュメント | ユーザーを説明するメタデータを含むドキュメント。 このフィールドは、ユーザーに関連付けられているすべての 注意システム関数にはユーザー データはありませんシステム関数では、 | ||||||||||||||||
| ドキュメント | アプリケーションのカスタム ユーザー データ コレクションからのドキュメントで、ユーザーの ID を指定します。 カスタム ユーザー データ コレクションを使用して、アプリケーションのユーザーに関する任意のデータを保存できます。 注意大規模なカスタム ユーザー データの保存を避けるカスタム ユーザー データは、MongoDB ドキュメントの最大サイズである | ||||||||||||||||
| 配列 | ユーザーに関連付けられた認証プロバイダ ID のリスト。 ユーザーが初めて特定のプロバイダーにログインすると、App Services はそのユーザーを、一意な識別子とプロバイダーからのユーザーに関する追加メタデータを含む ID オブジェクトに関連付けます。 後続のログインでは、App Services は既存の ID データを更新しますが、新しい ID は作成しません。 ID オブジェクトの形式は次のとおりです。
|
注意
一般に、App Services は、特定のユーザーが初めて認証するときに、そのユーザーのユーザー オブジェクトを作成します。 App Services UI を使用してテストのメール/パスワードユーザーを作成すると、App Services はそのユーザーのユーザー オブジェクトをすぐに作成します。
ユーザーの検索
1 人以上のユーザーに関する情報を検索するには、左側のナビゲーション メニューで [ App Users ] をクリックします。 ページには Atlas App Services アプリに関連付けられているユーザーのリストがあるUsersタブが開きます。
Tip
検索するユーザーの ID がすでにわかっている場合は、 Usersテーブル検索バーでそのユーザーの ID を検索できます。
1 人以上のユーザーに関する情報を検索するには、 appservices users
list
を呼び出します。 CLI では、アプリ ID の入力を求められ、選択するアプリのユーザーが一覧表示されます。
appservices users list
プログラムを呼び出すときに引数を指定することもできます。
appservices users list --app=<Your App ID>
1 人以上のユーザーに関する情報を検索するには、次の形式でGET
リクエストを作成します。 グループ ID とアプリ ID を指定する必要があります。
curl --request GET \ --header 'Authorization: Bearer <access_token>' \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/users
検索するユーザーの ID がすでにわかっている場合は、リクエスト URL にその ID を追加できます。
curl --request GET \ --header 'Authorization: Bearer <access_token>' \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/users/<userId>
以下も参照してください。
フィルターユーザー
フィルター条件を満たすユーザーのサブセットにユーザーのリストを制限するフィルターを指定できます。
フィルターを定義するには、 Usersテーブルの上部にあるfilter barを使用します。 次の方法でフィルタリングできます。
Provider type
匿名
メール/パスワード
API キー
Facebook
Google
Apple
カスタム JWT
カスタム関数
Status
確認済み
支払い待ち
State
enabled
disabled
次のフラグと引数を使用してユーザー操作をフィルタリングできます。
--pending
: 含めると保留中のユーザーのみが一覧表示されます。 それ以外の場合、 には確認済みのユーザーのみがリストされます。--state
: 指定された状態のユーザーのみを一覧表示"enabled"
"disabled"
--provider
:"anon-user"
"local-userpass"
"api-key"
"oauth2-facebook"
"oauth2-google"
"oauth2-apple"
"custom-token"
"custom-function"
例
次のコマンドは、出力を保留中の(未確認)のメール/パスワード ユーザーのみに制限します。
appservices users list --pending --provider="local-userpass"
例
次のコマンドは、出力を無効なユーザーのみに制限します。
appservices users list --state="disabled"
次のクエリ パラメーターを使用してユーザー操作をフィルタリングできます。
Parameter | タイプ | 説明 |
---|---|---|
| string | 前回のページ分割リクエストによって返された最後のユーザーの |
| string | 結果を並べ替えるフィールド名。有効な値はデフォルトの |
| ブール値 |
|
例
次の リクエストでは、 _id
の降順でユーザーが返されます。
curl --request GET \ --header 'Authorization: Bearer <access_token>' \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/users?desc=true
また、保留中の(未確認)のメール/パスワード ユーザーのみに結果を制限することもできます。 次の形式でGET
リクエストを作成します。
curl --request GET \ --header 'Authorization: Bearer <access_token>' \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/user_registrations/pending_users
以下も参照してください。
ユーザー データの表示
ユーザーのデバイスの表示
ユーザーがアプリケーションに接続すると、Atlas App Services は次のような情報をログに記録します。
ログに記録される情報には、以下のものが含まれます。
デバイス プラットフォームは、 HTTPクライアント(「cloud」、「firefox」、「fhan名js」など)またはモバイル OS(「 iOS 」、「 Android 」など)のいずれかになります。
プラットフォームのバージョン。
デバイス上のアプリのバージョン。
一意のデバイス ID。
この情報を表示するには、ユーザーのリストから次の情報を表示します。
表示するデバイスを持つユーザーを見つけます。
...をクリックしてオプション メニューを開き、 View Devicesを選択します。
ユーザーのプロバイダー データの表示
ユーザーがアプリケーションに接続し、有効にした認証プロバイダのいずれかを使用して認証するたびに、App Services はプロバイダー データをログに記録します。
この情報を表示するには、ユーザーのリストから次の情報を表示します。
プロバイダー データを表示するユーザーを見つけます。
...をクリックしてオプション メニューを開き、 View Provider Dataを選択します。
ユーザーのアクティビティ ログの表示
App Services は、実行された関数呼び出しを含め、各 App ユーザーによって行われたすべてのリクエストを記録します。 また、関数がconsole.log
、 console.warn
、またはconsole.error
を使用してログに書き込む場合、これらのエントリは関数のログ出力に含まれます。
この情報を表示するには、ユーザーのリストから次の情報を表示します。
アクティビティ データを表示するユーザーを見つけます。
[ View Activityをクリックします。 これにより、その特定のユーザーが行ったリクエストのログにリダイレクトされます。 エントリを展開すると、そのリクエストの詳細が表示されます。
概要
ユーザー オブジェクトには、アプリ ロジックで使用できるユーザーに関する関連情報が含まれています。
ユーザー オブジェクトに含まれる正確な情報は、使用される認証プロバイダによって異なります。
App Services UI の
Users
ページでユーザーを検索できます。App Services は、ユーザーの接続済みデバイス、プロバイダー データ、アクティビティ ログなどの情報を記録します。