【发布时间】:2018-03-03 13:02:04
【问题描述】:
这就是我想要做的事情
我正在 Angular 中创建一个 SPA。
我所有的业务逻辑都是用 Web API 编写的。
我正在从 Angular 向 REST API 进行 http 调用,并获取 Json 数据并将其绑定到 Angular UI。
这一切都很好。此外我想在我的应用程序中实现会话维护。
一旦用户登录,我将调用另一个 api 来检查凭据是否正确,API 返回 true 或 false,根据将 Uesr 重定向到主页。
现在我需要维护用户的会话,除非用户注销。现在这是我知道的方法。
Cookie-> 我可以创建一个 cookie 来维护会话,但这样做有风险,并且可能有助于会话劫持。
注意:我不是在谈论令牌身份验证,我相信它具有完全不同的目的。
如果您能提出一些相关的建议,可能是使用 node.js 或我不知道的 Angular 中的东西,那将是一个很大的帮助。
如果您想对我所遵循的架构提出建议。这也很受欢迎。
【问题讨论】:
-
你试过浏览器localStorage吗?
-
浏览器上的任何东西都不安全。它并不比 cookie 更安全。
-
传统会话实际上由服务器管理并使用 cookie 进行跟踪。对于未直接连接到 Web 服务器本地存储的前端应用程序,cookie 和服务可能是一个不错的选择
-
对于经过身份验证的安全会话(登录用户),客户端证书提供最佳安全性。但是对于许多应用程序来说,这太过分了,但是如果通过 https 的 cookie 对您的需求来说太不安全了,您可以考虑这样的解决方案。
标签: .net angular session asp.net-web-api