Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
保护公共API不受来自网站的AJAX调用的影响_Api_Oauth 2.0_Jwt_Csrf_Access Keys - Fatal编程技术网

保护公共API不受来自网站的AJAX调用的影响

保护公共API不受来自网站的AJAX调用的影响,api,oauth-2.0,jwt,csrf,access-keys,Api,Oauth 2.0,Jwt,Csrf,Access Keys,我在这里读了很多答案,但没有找到解决问题的方法。 我的API是公开的,我想确保请求只来自网站。该网站将有许多AJAX请求-整个API只能在读取时访问 每个人都可以访问该网站,因此用户/pw毫无意义。访问密钥也是如此,因为我们没有任何授权,我们使用AJAX(每个密钥对任何人都是可读的) 我们只是有一个匿名用户,并希望保护来自我们网站的请求能够访问api 有什么想法吗?可能是重复的坦白说,这是不可能的。您必须实现某种会话,并且在没有任何身份验证的情况下,您无法实现不会被其他人欺骗的会话。即使使用身份

我在这里读了很多答案,但没有找到解决问题的方法。 我的API是公开的,我想确保请求只来自网站。该网站将有许多AJAX请求-整个API只能在读取时访问

每个人都可以访问该网站,因此用户/pw毫无意义。访问密钥也是如此,因为我们没有任何授权,我们使用AJAX(每个密钥对任何人都是可读的)

我们只是有一个匿名用户,并希望保护来自我们网站的请求能够访问api


有什么想法吗?

可能是重复的坦白说,这是不可能的。您必须实现某种会话,并且在没有任何身份验证的情况下,您无法实现不会被其他人欺骗的会话。即使使用身份验证,如果有人在论坛上发布他们的会话Id,那么没有任何进一步的防御(IP、用户代理等),每个人都可以使用它!你必须限制你的API,否则你会被拒绝。我认为用stp保护csrf是有意义的(总体而言)。但很明显,这不是身份验证,也不是授权。与会话相结合是目前唯一的选择。谢谢大家。