保护JavaScript从不安全页面进行的REST调用

时间:2011-08-31 21:08:25

标签: ajax security authentication rest

我们有一个基于Web的应用程序,我们不要求最终用户登录。该应用程序使用Ajax来调用托管在同一服务器上的REST服务。除了这个应用程序,我们还要确保如果任何其他应用程序/代理程序调用REST服务,它们将被拒绝。

保护这样的REST API的最简单方法是什么?我的猜测是我们会包含某种安全令牌并通过HTTPS进行调用。但是我不清楚Ajax应用程序将如何创建/获取/加密令牌以及生命周期通常是什么样的。

如果可能,我宁愿在Spring Security或OAuth之外执行此操作。我还读到通过SSL发送用户名和密码足以进行身份​​验证。在这种情况下,应用程序将具有“用户名”和密码,它将随每次请求发送给REST服务。但如果客户端只是浏览器中的HTML和javascript,它将如何保密信息?

感谢。

1 个答案:

答案 0 :(得分:0)

一般来说,这是不可能的。有人可以在你的javascript上查看源码,阅读令牌,然后随心所欲。

这里没有必要

https。对于令牌,最简单的方法是在从服务器下载javascript时设置cookie,然后该cookie也将随任何AJAX请求一起传输。

这不是很安全 - 任何人都可以看到cookie是什么并使用它,但这是你能做到的最好的。