ホームページ  >  に質問  >  本文

Nodejs + firebase: ユーザーがサーバー側で認証されているかどうかを確認する方法

ユーザーは Firebase SDK を使用してクライアント側で認証します。

サーバー側にはnodejsがあり、SDKもインストールされています。データベースを使用できるため、このサーバー コードは機能します:

リーリー

このコードは機能します。

これはユーザー情報を取得する (高速化) ルートです:

リーリー

ユーザー変数は常に空です。

この問題に対処する正しい方法は何ですか?

この状況にもっと一般的に対処するにはどうすればよいでしょうか?

P粉493313067P粉493313067428日前541

全員に返信(2)返信します

  • P粉360266095

    P粉3602660952023-09-09 13:15:25

    aannabeengineer が正しいです。これは概念実証です (ユーザー認証と情報取得後にサーバー側のコードを調整する必要があります)。

    ###サーバ:### リーリー ###フロントエンド:### リーリー

    はい、現在サーバー側で firebase admin を使用しています (「firebase」はサーバー上のインスタンスです)。

    返事
    0
  • P粉141911244

    P粉1419112442023-09-09 12:18:05

    サーバー側でユーザーを認証するには、JWT クライアントを生成し、サーバー上でそれを検証する必要があります。 まず、クライアント側で IdToken を生成します。

    次に、リクエスト内のトークンをサーバーに送信します。これにはベアラー認証を使用できます (HTTP ヘッダーとして送信されます。Authorization: Bearer)

    サーバー上では、任意の JWT ライブラリを使用してトークンを検証できます。 Firebase SDK を使用する場合は、正しい SDK を使用する必要があります。 「firebase/compat/auth」はクライアント用です。 Firebase Management SDKが必要です。 次のリンクでは、Firebase Admin Validation ID Token SDK を使用する方法を説明しています

    返事
    0
  • キャンセル返事