私は、PassportJSを使用してMEANスタックにかなり簡単なAPIセットアップを行っています。セキュリティーなし(一般的なデータを取得)とユーザー認証(セキュリティー保護された情報)を使用してルートを設定するのに問題はありません。しかし、私は、許可されたユーザーベースのアクセスのベストプラクティスを見つけることができないようです。REST APIをユーザー固有のコンテンツに限定する方法
例: /api/users /:idは、認証が必要なルートです。したがって、アクセストークンなしでユーザー情報を取得することはできません。
トークンを取得した後は、リクエストとELSEのIDを使ってトークンを送信して、自分のコンテンツではなくコンテンツにアクセスすることができます。 IDは長すぎますが、誰かがシステムから人のIDを取得する場所であれば、そのデータにアクセスするために自分のパスワードだけが必要です。
セッションと呼ばれる新しいコレクションにトークンを保存し、token/userIdの組み合わせに合わせて追加の確認を行うことを検討しました。しかし、それがベストプラクティスかどうかはわかりません。
Passportは自動的にそれを処理しますが、私はその部分を見逃しましたか?あなたが、例えばのためのuserId
のAPIチェックが欠落しているようだ
おかげで、 ウェイン
あなたのトークンシステムに間違いがあるようです。通常、トークンにはuserIdが含まれていて、サーバー側でデコードした後にこれらのIDを使用できます。異なるIDを送信するだけでユーザーを切り替えることはできません。 –