私の問題:私はクライアントとして、指定されたuidでログインしていることをサーバに証明する方法はありますか?
私のウェブサイトから新しいユーザーを作成することはできません。これは、大文字であるが、/users/myid
の下のリアルタイムデータベースで「isAdmin」フラグがtrueに設定されている場合。
一般的に私はセキュリティルールでこれを行っていましたが、ここでの問題はadmin SDKを使用する必要があることです。通常のcreateNewUserメソッドは新しく作成されたユーザーに自動的にサインインするからです。しかし私は管理者として、新しいユーザーを作成して自分自身としてログインしたいと思っています。だから私がやるべきことは、自分のサーバに、自分のuidと作成されるべき新しいユーザデータを使ってajax投稿要求を使うことです。私のサーバーは、指定されたuidにisAdminフラグがあるかどうかをチェックし、そうであれば、そのようなメソッドを提供するfirebase admin SDKでユーザーを作成します。
ただし、管理者のuidがあれば誰でもそのリクエストを受け取り、新しいユーザーを作成できます。 (私のクライアントは、他のユーザからuidを確実に取得する)。
それで、私は実際にそのuidでログインしていることをサーバーに証明するにはどうしたらいいですか? 私の理解では、トークンはデータベースに書き込むことができるように使われていますが、そのアクセス権は必要ありません。実際にそのuidで実際にログインしていることを証明する必要があります。 私には何かがありますか?ありがとう、たくさんの人!