我看到设置“*”通配符存在安全风险,即
Access-Control-Allow-Origin: "*"
我想知道在设置具体域时是否存在任何安全风险,即
Access-Control-Allow-Origin: http://www.example.com
最佳答案
CORS header 通常用于 JavaScript AJAX 请求。浏览器有一个内置的安全机制,不允许您查询其他域,除非它们通过设置这些 CORS header 明确允许。
实际上并没有太大的安全风险。无论如何,您始终可以发送恶意请求。浏览器只是集体决定玩好。
需要注意的一件事是您不一定总是要发送
Access-Control-Allow-Origin: http://www.example.com
标题。这可能会将人们带到所有使用您的 API 的域。我的建议是你只在必要时发出 header ,即。您收到来自白名单域的 OPTIONS
请求。
我最近写了一篇关于这个的博文:http://fritsvancampen.wordpress.com/2013/02/03/cross-site-origin-requests-aka-cross-origin-resource-sharing/
关于javascript - 设置Access-Control-Allow-Origin可能存在的安全问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14979313/