在API上启用CORS
Enabling CORS on an API
我们目前正在开发一种API,以允许客户和经销商购买和管理我们的产品。
目前,我们没有在服务器上启用CORS。这阻止了js(例如Angularjs)访问API。
我想启用这些头,这样客户就可以通过浏览器中的js访问我们的API。
在通配符上实现CORS以允许在本质上将是公共API的情况下实现CORS的风险是什么?这是否使我们的API本质上更容易被滥用或其他什么?
Access-Control-Allow-Origin: *
在向我们这些老派后端开发人员介绍这一论点时,我还应该考虑其他什么吗?谢谢
给定:
- 爱丽丝,一个经营网站的人
- Bob,一个使用Alice网站的人
- Mallory,一个经营恶意网站的人
如果您使用CORS从浏览器启用对API的全局访问,则:
如果Bob被诱骗访问Mallory的网站,那么Mallory网站可以指示Bob的浏览器从Alice的网站获取数据并将其提供给Mallory。
如果Bob登录到Alice的网站,则浏览器将发送验证为Bob所需的任何cookie。
Mallory可以访问Alice网站上任何本应是Alice和Bob私人的数据(如Bob的订单历史、医疗记录或Alice网站存储的其他数据)。
如果通过API提供的数据仅由公共信息组成,那么使其全局可访问就没有问题。如果它包含个人数据,那么您需要考虑使用一些次要的身份验证方法。
如果您的API是公共的,我看不到任何风险。。(即使是带有身份验证的私有API)简单地说,人们将能够从自己的域中调用它。
但您可以将其限制为一个域,而不必强制使用通配符。
相关文章:
- 在Golang回调函数中启用CORS
- 如何在angular js中启用CORS
- Elasticsearch https cors已启用,但仍获得No'访问控制允许来源'标头存在于请求的
- 在JQuery中启用CORS后,CORS请求被阻止
- 如何在OrientDb-server-config.xml中启用CORS
- 无法理解如何使用 ajax 调用启用 CORS
- 在角度全栈生成器上启用 CORS
- 在 Firefox 中启用 Cors
- 如何在Dynamics CRM中启用CORS
- 在NodeJS中启用CORS
- 启用CORS时的安全漏洞
- 启用来自角度JS的控制器的CORS
- 流明:启用CORS
- 在API上启用CORS
- 如何启用CORS(JS+MVC Web API)
- 如何在谷歌驱动器上托管的文件夹中启用CORS
- 在Sharepoint 2013中启用CORS
- 是否有方法可以快速确定浏览器是否支持启用了cors的图像而不会污染浏览器?
- 快速启用CORs标头仍然会导致错误
- 在WebAPI上启用CORS, Chrome和FF仍然不起作用