【问题标题】:SailsJS secure authenticationSailsJS 安全认证
【发布时间】:2017-11-15 06:56:57
【问题描述】:

我正在使用 SailsJS 作为后端和 Angular 作为前端来构建应用程序。在许多网站上,我发现身份验证是通过将req.session.userID 设置为 som 值来完成的,但在策略中它只执行基本检查,如if(req.session.userID),但我不确定这是否安全。如果我将一些随机字符串放入名为userID 的cookie 中,系统会认为这是有效登录吗?

例如,我正确的userIDABCDEF,但是如果某个攻击者过来并将他的cookie 用户ID 设置为DEFGH 怎么办。系统会认为这是有效的登录吗?我认为没有对数据库进行一些背景验证。创建一个名为 Sessions 的模型会存储随机生成的会话 ID 和关联的用户 ID 不是更好吗?然后系统会在用户登录时生成随机的 sessionID,并将其存储在数据库中,并在策略系统中检查当前设置的 req.session.sessionID 是否有效。

我之所以问这个问题是因为我对风帆的理解不是很深入,但从我的角度来看,文档中提出的解决方案似乎并不安全。

【问题讨论】:

  • 特别是哪些文档?能给个链接吗?

标签: authentication sails.js


【解决方案1】:

我建议您看看JWT 以及它如何解决一些问题。那么另一个问题将是“如何存储这个令牌”。并且您可以根据您的需要和可能性使用 cookie、本地存储等来解决。通常在客户端使用local storage + middleware,在服务器端使用reddis(高级会话行为)就足够了。

【讨论】:

    猜你喜欢
    • 2011-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-04
    • 2015-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多