【发布时间】:2015-08-11 03:37:51
【问题描述】:
正如标题所说,我需要为 Web 应用程序设置每个用户的并发会话上限,以防止帐户共享。
我在passportjs(节点平台上)中使用本地策略进行身份验证。
这样做的最佳做法是什么?计算登录请求的数量(创建会话的位置)是否足够?
【问题讨论】:
标签: node.js session login passport.js
正如标题所说,我需要为 Web 应用程序设置每个用户的并发会话上限,以防止帐户共享。
我在passportjs(节点平台上)中使用本地策略进行身份验证。
这样做的最佳做法是什么?计算登录请求的数量(创建会话的位置)是否足够?
【问题讨论】:
标签: node.js session login passport.js
对于每次成功登录,您都需要在数据库中维护一个会话记录。当有人尝试登录时,您需要查询数据库以计算活动会话数。
由于以下几个原因,您计算登录请求数的想法行不通:
【讨论】:
我最终在会话表中添加了另一个字段以跟踪 user_ids。
在创建会话的每个登录操作中,我都会查询当前用户的所有会话,如果超过限制则将其删除。
【讨论】: