当前位置: 首页 > 知识库问答 >
问题:

设置访问控制允许源可能存在安全问题

彭允晨
2023-03-14

我看到设置“*”通配符是安全风险,即。

Access-Control-Allow-Origin: "*"

我想知道在设置具体域时是否存在任何安全风险,即

Access-Control-Allow-Origin: http://www.example.com

共有1个答案

沈俊明
2023-03-14

CORS 标头通常用于 JavaScript AJAX 请求。浏览器具有内置的安全机制,除非您通过设置这些 CORS 标头明确允许查询其他域,否则不允许查询其他域。

实际上没有太大的安全风险。无论如何,你总是可以发送恶意请求。浏览器只是集体决定玩好。

需要注意的一点是,您不一定总是希望发送

Access-Control-Allow-Origin: http://www.example.com

标头。这可能会将人们引向所有使用您的API的域。我的建议是,只有在必要时才发出标头,即。您会从白名单域获得OPTIONS请求。

我最近写了一篇关于这个的博客文章:http://fritsvancampen.wordpress.com/2013/02/03/cross-site-origin-requests-aka-cross-origin-resource-sharing/

 类似资料:
  • 问题内容: 我最近不得不设置为,以便能够进行跨子域的ajax调用。 现在,我不禁感到自己正在使环境面临安全风险。 如果我做错了,请帮助我。 问题答案: 通过使用响应,所请求的资源允许与每个来源共享。基本上,这意味着任何站点都可以向您的站点发送XHR请求并访问服务器的响应,如果您尚未实现此CORS响应,则不会这样。 因此,任何站点都可以代表其访问者向您的站点发出请求并处理其响应。如果您基于浏览器自动

  • 问题内容: 我看到以下错误: 使用此代码: 是什么原因引起的,如何解决? 问题答案: 在当前域之外发出ajax请求时,Javascript是受限制的。 例1:您的域名为example.com,并且您想向test.com提出请求=>您不能。 例2:您的域名是example.com,并且您想向inner.example.com发送请求,但是您不能。 例3:您的域名为example.com:80,并且您

  • 我在从node.js服务器获取数据时遇到问题。 客户端是: 在服务器端,我还设置了标题: 但我犯了个错误 "XMLHttpRequest无法加载http://localhost:3003/get_testlines.对预试请求的响应没有通过权限改造检查:请求的资源上没有'Access-Control-Prover-Origin'标头。因此,来源http://localhost:3000不允许进入。

  • 我正在用POST测试JS。但是我没有成功。 使用代码: 我得到以下错误: 奇怪的是请求头没有通过以下行正确设置: 请求头如下所示:

  • 我正在开发一个带有jhipster V4.5.6的Spring启动应用程序。但无法配置 CORS。 下面是我的application-dev.yml文件: WebConfigurer.java如下: 和安全配置。java文件如下所示: 现在,我可以使用 GET 请求。但是当我使用POST时,如下所示: 我得到以下错误: XMLHttpRequest 无法加载 http://localhost:80

  • 问题内容: 我尝试使用以下代码通过$ http(角度)发送http请求: 但这不起作用,并且我在Web控制台中有此错误: 你有解决方案吗 ? 问题答案: 您看到此错误是由于在浏览器中实现的称为Same Origin Policy的安全机制所致。 基本上,这是由于您的网页尝试访问驻留在与网页本身不同的主机,端口或方案(HTTP / HTTPS /文件等)所在的服务器上的资源而引起的。 为了解决此问题