【问题标题】:Authenticate REST service from javascript client从 javascript 客户端验证 REST 服务
【发布时间】:2015-05-30 11:48:48
【问题描述】:

我已经在 java(server) 中实现了 json web 服务,而客户端是纯 javascript。可以对来自 javascript 的 Web 服务调用进行身份验证吗? 我知道在双方都使用私钥是标准的,但是 javascript 是公开的,所以这不是很安全:)

我已经检查过了:Authorization and Authentication to REST API from JavaScript Client 并在互联网上阅读了大量信息,但似乎无法通过 javascript 进行身份验证(代码可见)

非常感谢!

【问题讨论】:

    标签: javascript web-services rest authentication


    【解决方案1】:

    正如您所提到的,在浏览器中存储机密凭据是一个坏主意(由于 XSS 漏洞)。 HTTPS-Only cookie 是在客户端存储身份验证令牌的最安全方式(以最大限度地减少 XSS 攻击),但您还需要设置 CSRF 预防策略。

    这是我写的一篇文章,更深入地讨论了细节:

    Token Based Authentication for Single Page Apps

    免责声明:我在Stormpath工作

    【讨论】:

    • 任何人都不能通过单击 chrome 中的检查元素来查看 JWT 令牌的 json 编码过程吗?
    【解决方案2】:

    是的,你可以,但有一些事情需要注意。一旦您的 JS 应用程序的用户通过身份验证,您就可以将它们存储在本地存储中。然后你可以在你的请求中使用它们。小心可能的 XSS 攻击。

    这里有一些可以帮助你的链接:

    希望对你有帮助 蒂埃里

    【讨论】:

      猜你喜欢
      • 2020-09-08
      • 1970-01-01
      • 2010-09-14
      • 1970-01-01
      • 2010-11-20
      • 1970-01-01
      • 2019-07-30
      相关资源
      最近更新 更多