SailsJS安全认证

时间:2017-11-15 06:56:58

标签: authentication sails.js

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

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

我问这个是因为我对风帆没有很深入的了解,但从我的观点来看,文档中提出的解决方案似乎并不安全。

1 个答案:

答案 0 :(得分:0)

我建议你看一下JWT以及它如何解决一些问题。然后另一个问题是“如何存储此令牌”。所有这些都取决于您的需求和可能性,您可以使用Cookie,本地存储等进行解决。通常客户端的local storage + middleware在服务器端具有reddis(高级会话行为)就足够了。