可以使用Load Balancer为Express Session创建相同的会话ID

时间:2015-04-16 08:03:30

标签: node.js session cryptography load-balancing express-session

我使用2台机器使用ebs来服务我的网站。它用express.js编写,有2个节点服务器在运行。我使用快速会话创建会话并将其存储在redis中。

2台机器是否有可能最终创建相同的会话ID?

1 个答案:

答案 0 :(得分:0)

在幕后,express-session使用uid-safe生成会话ID,如果可用,则会should use crypto.randomBytes

这应该保证UID基于足够安全的数据以用于加密,这意味着它在大多数情况下应该完全不可预测且不可再现。我会启动node进程并确认crypto.randomBytes可用。

如果要跟踪哪个进程创建了会话ID,您还可以使用一些crpyto方法,这些方法可以让您使用对每个正在运行的进程唯一的salt / tokns进一步编码生成的UID。

您可能希望在Cryptography SESecurity SE上进一步讨论专家同行的细节,但就您所关注的问题而言,使用默认会话应该是安全的express-session中的ID生成器,不仅适用于在不同计算机上运行的进程,甚至适用于在相同环境中运行的进程。