繁体   English   中英

来自客户端访问API的AJAX请求的安全性

[英]Security for AJAX requests from the client side accessing an API

假设您要第三方网站复制并粘贴您提供的javascript代码段。 此代码使用AJAX请求来访问服务器上的JSON API。 您将如何实现安全性,以便在将API使用情况与已注册并收到API密钥的网站相关联的同时,有效地禁止站点滥用另一个站点的API密钥/使用情况? 从客户端不可能实现这种安全性吗? 网站是否必须从服务器访问API?

您还可以在服务器站点上检查请求的HTTP引荐来源网址。
我认为更改javascript代码不会伪造它。
但是它不能阻止某人从自定义浏览器或某些http客户端发送自定义程序包。

实施服务器端解决方案是可能的,而且不太困难,但是它将阻止许多站点使用您的脚本。
您可以让他们从他们的服务器发送请求
或让他们将密钥保留在服务器上,在将密钥发送给客户端之前先对其进行哈希处理(哈希密钥会在一段时间后发生变化)...

您可以只检查window.location或其某些组件。

我能想到的加强安全性的唯一方法就是通过IP地址,但这充其量是有风险的,因为有很多原因会导致设计不佳。

这将是服务器端保护javascript文件的安全性。 您可能只是让Web服务提供了javascript,因此它可以在将文件发送到客户端之前进行检查。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM