ユーザーの管理 - C++ SDK
Atlas App Services を使用してクライアントアプリをサポートすると、 ユーザー オブジェクトにアクセスできます。 このユーザー オブジェクトで C++ SDK メソッドを使用すると、便利に次のことを行うことができます。
ユーザーの作成と削除
ユーザーのログインとログアウト
カスタムユーザーデータの作成と更新
ユーザーの作成と削除
メール/パスワード認証を除くすべての認証プロバイダーの場合、App Services はユーザーが初めて認証するときにユーザー オブジェクトを自動的に作成します。 メール/パスワード認証では、アプリはユーザーを手動で登録する必要があります。
C++ SDK には、SDK 経由でユーザーを削除する機能がまだありません。 App Services Admin API delete a user
エンドポイントを使用してサーバーからユーザーを削除できます。 オプションで、Admin API を使用してユーザーを削除 し、SDK から関数を呼び出す Atlas Function を作成することもできます。
ユーザーのログインとログアウト
1 つ以上の認証プロバイダを使用して、ユーザーをクライアントアプリにログインまたはログアウトさせます。 ここでは、次の作業が可能です。
Apple、Facebook、Google などの既存のソーシャル アカウントでユーザーをログインさせます。
App Services のメール/パスワード管理、または独自のカスタム関数またはカスタムJSON web tokenユーザー管理を使用して、新しいユーザー アカウントを作成します。
匿名ユーザーを有効にすると、ユーザー データを保持せずに App Services App にアクセスできます。
ログインしているユーザーがある場合、SDK メソッドによって次のことが可能になります。
ユーザーの構成オブジェクトと同期された Realmを開きます
ログイン ユーザーとしてバックエンド関数を実行
ログインが成功すると、C++ SDK はデバイス上の認証情報をキャッシュします。 ログイン フローをバイパスし、キャッシュされたユーザーにアクセスできます。 これを使用して、Realm を開くか、次回のアプリが開くときに関数を呼び出します。
ユーザー セッション
App Services はアクセス トークンとリフレッシュ トークンを使用してセッションを管理します。 クライアント SDK は、トークンを管理し、そのトークンにリクエストを提供するためのロジックを提供します。
Realm は リフレッシュ トークン を使用して、ユーザーのアクセス トークンの有効期限が切れると自動的に更新されます。 ただし、Realm はリフレッシュ トークンを自動的に更新しません。 リフレッシュ トークンの有効期限が切れると、SDK は更新されたアクセス トークンを取得できなくなり、ユーザーが再度ログインするまでデバイスは同期できなくなります。
ユーザー セッションとトークンの管理の詳細については、App Services ドキュメントの「ユーザー セッション 」を参照してください。
カスタムユーザーデータの読み取りと更新
カスタム データを、希望言語やローカル タイムゾーンなどのユーザー オブジェクトに関連付け、クライアント アプリケーションから読み取ることができます。 ユーザー オブジェクトには、カスタム ユーザー データにアクセスするために使用できるcustomData
プロパティがあります。
カスタム ユーザー データを作成およびアップデートするには、MongoDB データソースに直接アクセスする必要があります。 App Services では、このカスタム ユーザー データを作成または更新するための SDK メソッドは提供されていません。これは読み取り専用のプロパティです。