私はebsを使用して2台のマシンを使用して、私のWebサイトをサーバーにしています。Express.js で記述されており、2 つのノード サーバーが実行されています。そして、express-sessions を使用してセッションを作成し、それを redis に保存しています。
2 台のマシンが同じセッション ID を作成する可能性はありますか??
私はebsを使用して2台のマシンを使用して、私のWebサイトをサーバーにしています。Express.js で記述されており、2 つのノード サーバーが実行されています。そして、express-sessions を使用してセッションを作成し、それを redis に保存しています。
2 台のマシンが同じセッション ID を作成する可能性はありますか??
内部では、セッション ID を生成するためにexpress-session
使用します。使用可能な場合は、それを使用する必要があります。uid-safe
crypto.randomBytes
これにより、UID が暗号化で使用するのに十分安全なデータに基づいていることが保証されます。つまり、ほとんどの状況では、UID は完全に予測不能で再現不可能です。プロセスを起動して、それが利用可能node
であることを確認しcrypto.randomBytes
ます。
セッション ID を作成したプロセスを追跡する場合は、crpyto
実行中の各プロセスに固有のソルト/トークンを使用して、生成された UID をさらにエンコードできるいくつかの方法を追加で使用できます。
これについては、暗号化 SEまたはセキュリティ SEで専門家仲間からの核心的な詳細についてさらに議論することをお勧めしますが、懸念する限り、express-session
実行中のプロセスだけでなく、 でデフォルトのセッション ID ジェネレーターを使用しても安全です。別々のマシン上で実行できますが、同じ環境で実行されているプロセスでも同様です。