ユーザー管理 - Flutter SDK
Atlas App Services にアクセスし、Realm Flutter SDK で Atlas Device Sync を使用するには、まず、App Services 認証プロバイダでユーザーを認証する必要があります。
Atlas App Services 認証の構成の詳細については、Atlas App Services ドキュメントの「 App Services認証 」を参照してください。
ユーザーの作成と削除
メール/パスワード認証を除くすべての認証プロバイダーの場合、App Services はユーザーが初めて認証するときにユーザーを自動的に登録します。 メール/パスワード認証プロバイダーを使用する場合は、 ユーザー を手動で登録する必要があります。 ユーザーが複数の方法で認証する場合は、これらのユーザー ID を 1 つのユーザー オブジェクトにリンクできます。
ユーザーを削除することもできます。 ユーザーを削除すると、ユーザーに添付されたメタデータは App Services から削除されますが、ユーザーが入力したデータはバックエンドから削除されません。
Tip
Appleアカウントの削除要件
Apple は、アプリケーションが App Store App Storeリストされることを要求しています 。 アカウントを作成したすべてのユーザーに、アカウントを削除するオプションを提供する必要があります。メールや パスワード認証など、ユーザーを手動で登録する必要がある認証方法を使用する場合でも、Apple でサインインなどのユーザーを自動的に作成する認証方法を使用する場合でも、 年 6 月30 日までに ユーザー アカウントの削除 を実装する必要があります。 。2022
ユーザーのログインとログアウト
1 つ以上の認証プロバイダを使用して、ユーザーをクライアントアプリにログインまたはログアウトさせます。 ここでは、次の作業が可能です。
Apple、Facebook、Google などの既存のソーシャル アカウントでユーザーをログインさせます。
App Services のメール/パスワード管理、または独自のカスタム関数またはカスタムJSON web tokenユーザー管理を使用して、新しいユーザー アカウントを作成します。
匿名ユーザーを有効にすると、ユーザー データを保持せずに App Services App にアクセスできます。
ログインしているユーザーがある場合、次の操作を実行できます。
ユーザーの構成オブジェクトと同期された Realmを開きます
ログイン ユーザーとしてバックエンド関数を実行
マルチユーザー アプリケーションでアクティブなユーザーを変更する
デバイスからユーザーを削除する
ログインが成功すると、Flutter SDK はデバイスの認証情報をキャッシュします。 ログイン フローをバイパスし、キャッシュされたユーザーにアクセスできます。 これを使用して、Realm を開くか、次回のアプリが開くときに Atlas Function を呼び出します。
ユーザー オブジェクト
App Services はアクセス トークンとリフレッシュ トークンを使用してセッションを管理します。 クライアント SDK は、トークンを管理し、そのトークンにリクエストを提供するためのロジックを提供します。
Realm は リフレッシュ トークン を使用して、ユーザーのアクセス トークンの有効期限が切れると自動的に更新されます。 ただし、Realm はリフレッシュ トークンを自動的に更新しません。 リフレッシュ トークンの有効期限が切れると、SDK は更新されたアクセス トークンを取得できなくなり、ユーザーが再度ログインするまでデバイスは同期できなくなります。
ユーザー セッションとトークンの管理の詳細については、App Services ドキュメントの「ユーザー セッション 」を参照してください。
一部の認証プロバイダでは、開発者が氏名やメールアドレスなどのユーザー メタデータにアクセスできるようにしています。 App Services アプリケーションでこれらのメタデータ フィールドを構成すると、クライアント アプリからこのメタデータを読み取ることができます。
App Services が Flutter SDK を提供するユーザー オブジェクトの詳細については、次のドキュメントを参照してください。
App Services ドキュメントの「ユーザー オブジェクト」。
Flutter SDK ドキュメントのユーザー メタデータ。
ユーザー (Flutter SDK リファレンス ドキュメント)。
ユーザーの変更をリッスンする
ユーザー インスタンスに対する変更をReactしたり、操作したりできます。 たとえば、ユーザー状態が変更されたときやユーザー アクセス トークンが更新されたときに通知を受け取ります。
カスタムユーザーデータ
カスタム データを、希望言語やローカル タイムゾーンなどのユーザーに関連付け、クライアント アプリケーションから読み取ることができます。 カスタム ユーザー データの操作の詳細については、「 カスタム ユーザー データ 」を参照してください。