我需要一些关于使用会话令牌来验证用户的建议。我正在构建一个AngularJS应用程序,该应用程序使用API来配合后端。我只建造前端,而不是后端。该文档指出,对API的所有调用都在请求正文(POST)中附加了会话令牌。
我想知道在localStorage中存储此令牌的安全性。这就是我现在存储它并检索并附加到每个API请求的地方。登录后,服务器在正文中发送会话令牌,然后从那里保存。
没有关于x-access-token标头的文档,该标头应与向服务器发出的请求一起发送。它没有被检查服务器端。这有什么影响?我觉得如果没有这个额外的安全层,它很容易受到攻击。
我主要担心的是此设置的安全性。我想知道最好的设置是什么,以确保这个应用程序尽可能安全,并建议更改后端设置的方式来促进这一点。
谢谢!
答案 0 :(得分:0)
我建议使用$ cookies而不是localstorage。由于localstorage不支持某些旧版浏览器。 我正在使用cookie在我的项目中存储令牌
答案 1 :(得分:0)
正如您所说,您只处理UI部分而不是后端。后端团队需要确保正确评估标头并强制执行安全性(btw请求标头不属于请求主体)。只需将令牌放入x-access-token
标题中即可。
将令牌存储在localStorage
中可让您更好地控制Cookie:您不会意外地将其发送到不必要的网址。但是,较旧的浏览器不支持它 - 您可能需要使用填充程序。
在SPA的情况下,您可以考虑不存储令牌:可以在每次访问应用程序时获取它,然后将其存储在angularjs中的服务中,但这取决于您的获取/登录操作的实现方式(它总是互动的,需要多长时间等等。