【问题标题】:Session Token Authentication Security会话令牌认证安全
【发布时间】:2015-07-07 22:52:33
【问题描述】:

我需要一些关于使用会话令牌对用户进行身份验证的建议。我正在构建一个 AngularJS 应用程序,它使用 API 与后端绑定。我只构建前端,而不是后端。该文档指出,对 API 的所有调用都在请求正文 (POST) 中附加了一个会话令牌。

  1. 我想了解将此令牌存储在 localStorage 中的安全性。这就是我现在存储它并检索它并将其附加到每个 API 请求的地方。登录后,服务器将会话令牌发送到正文中,我从那里保存。

  2. 没有关于应与向服务器发出的请求一起发送的 x-access-token 标头的文档。它没有被检查服务器端。这意味着什么?我觉得如果没有这个额外的安全层,它很容易受到攻击。

我主要关心的是此设置的安全性。我想知道最好的设置是什么,以确保此应用尽可能安全,并建议更改后端设置方式以促进此操作。

谢谢!

【问题讨论】:

    标签: angularjs authentication token


    【解决方案1】:

    正如您所说,您只处理 UI 部分而不是后端。由后端团队确保正确评估标头并强制执行安全性(顺便说一句,请求标头不属于请求正文)。只需按照他们所说的将令牌放入 x-access-token 标头中即可。

    将令牌存储在 localStorage 中可以让您对 cookie 进行更多控制:您不会意外地将其发送到不必要的 URL。但是,较旧的浏览器不支持它 - 您可能需要为此使用 shim。

    在 SPA 的情况下,您可以考虑根本不存储令牌:可以在每次访问您的应用程序时获取它,然后将其存储在 angularjs 中的服务中,但这取决于您的获取/登录操作是如何实现的(是否总是互动的,需要多长时间等)。

    【讨论】:

      【解决方案2】:

      我建议使用 $cookies 而不是 localstorage。由于 localstorage 不支持某些旧版浏览器。 我正在使用 cookie 将令牌存储在我的项目中

      【讨论】:

        猜你喜欢
        • 2010-10-05
        • 2014-10-27
        • 2015-09-28
        • 1970-01-01
        • 2014-08-16
        • 2014-12-11
        • 2020-04-17
        • 2019-12-09
        • 1970-01-01
        相关资源
        最近更新 更多