节点表达会话 - 秘密需要以某种方式独特吗?

时间:2018-04-12 03:23:28

标签: node.js express session session-cookies

所以我使用快速会话https://github.com/expressjs/session,我想知道这个秘密是否需要为每个用户都是唯一的。我似乎无法找到任何说它的用法,只是列出了用法:

app.use(session({
  secret: 'keyboard cat',
  resave: false,
  saveUninitialized: true,
  cookie: { secure: true }
}))

我目前只是使用bcrypt创建密码,但我不确定在更新服务器文件时这是否会影响会话。

var salt1 = bcrypt.genSaltSync();
var salt2 = bcrypt.genSaltSync();
var secret = bcrypt.hashSync(salt1 + salt2, 10);
app.use(session({
    secret, // set this to a long random string!,
}));

会话是否应在函数内部生成,即function generateSession()

1 个答案:

答案 0 :(得分:2)

所有用户的秘密都是一样的。您提供的“秘密”只是充当会话哈希函数的salt。您使用的方法与任何方法一样好,因为每次重新启动应用程序时它都会生成新的盐。