私は、セッション メモリ ストアを使用して認証を処理している Express 上に構築された非常に単純な node.js アプリを持っています。基本的に、ユーザーは次の方法でログインします。
app.post('/sessions', function(req, res) {
// check username/password and if valid set authenticated to true
if (authenticated){
req.session.user = req.body.username;
} ...
});
次に、ブラウザーからの呼び出しごとに、requireLogin ミドルウェア関数が呼び出され、セッションのユーザー プロパティが設定されているかどうかが確認されます。
私は今、基本的にはブラウザで消費されるかもしれないし、されないかもしれないサービスを提供するようにアプリを移行しています. /sessions) は、ユーザーのアカウントに関連付けられた一時的なランダム トークンを返します。このトークンは、サービスにアクセスするために一定期間使用できます。サービスを使用するには、各呼び出しに有効なトークンを含める必要があります。(トークンを取得するための呼び出し後にパスワードをクライアントのコンピューターのメモリに保存する必要がないように、毎回ユーザー名/パスワードを渡すよりも良いと思いますか?)
そのようなシステムは基本的に上記の現在のシステムと同じくらい安全ですか、それともこれを処理するためのより標準的/安全な方法はありますか? このようなものを処理する標準的な方法は何ですか?
助けてくれてありがとう!