Anti-CORS, anti-CSP
介绍
启用 CORS 或 CSP 阻止的跨源请求。在选定的主机名中禁用 CORS 和 CSP,保护其他网站的安全
该扩展允许使用 fetch() 或 XMLHttpRequest (XHR) 对象进行跨源请求,这些请求被 CORS 策略阻止或违反文档的内容安全策略。这是解决开发过程中 CORS 错误的最简单方法。
在内部,该扩展通过设置宽松的 Access-Control-Allow-Origin、Access-Control-Allow-Methods、Access-Control-Allow-Headers、Access-Control- 来绕过跨源资源共享 (CORS) 和内容安全策略 (CSP)。允许凭证和内容安全策略响应标头。
用户指南:
单击选项卡中包含要启用跨域请求的 URL 的扩展程序图标。 CORS 策略在具有相同主机名的所有选项卡中被禁用。包含来自其他主机的网页的选项卡不受影响。任何 fetch() 或 XHR 请求都会成功,除非它们被 CSP 阻止。要禁用 CSP,必须重新加载页面。
典型用例:
您开发一个企业 Web 应用程序,其功能取决于现有的 Web 服务。生产环境与 Web 服务具有相同的主机名,但开发环境设置在您的办公室中并具有不同的主机名。 Web 服务不支持跨域请求。因此,在开发环境中,浏览器中的 CORS 机制会阻止对基本 Web 服务的 HTTP 请求。您可以想象一个基于反向代理和 REST 服务的环境相关 URL 的解决方案,或者您可以选择简单的解决方案,除了安装浏览器扩展之外不执行任何操作。
不仅是CORS,CSP也可以防止跨域请求。严格的 CSP 是越来越常见的安全要求。与 CORS 一样,您可以为开发和生产环境设置不同的策略,但使用扩展比配置特定于环境的应用程序设置更容易。
此扩展比其他扩展更好的地方:
- 扩展名是特定于域的。跨源请求被启用,即 CORS 和 CSP 被禁用,不是在所有浏览器选项卡中全局禁用,而是仅在您通过单击扩展图标选择的主机名的选项卡中启用。因此,该扩展不会损害您在浏览器中打开的所有网站的安全性。
- 扩展是开源的,因此是安全的。
- 该扩展放宽了 CORS 和 CSP。
- 支持带有 cookie 的跨源请求。该扩展设置的不是星号,而是 Access-Control-Allow-Origin 标头中的确切来源。
- 该扩展不会中断任何流行网站的功能,例如 Youtube.com 或 Google Docs
- 扩展没有任何设置,不需要配置。
- 除了图标之外,该扩展程序没有任何用户界面。
如何测试 CORS 扩展
有两个标准:
- 跨源请求成为可能。您可以在 https://crossoriginrequests.onrender.com 上测试所有可能的请求,即带或不带凭据的 GET、POST、PUT、DELETE、PATCH
- 其他网站(例如 youtube.com 或 docs.google.com)的功能不应受到干扰,即使在其选项卡中激活扩展程序也是如此。
反 CORS 扩展的源代码在 https://marian-caikovski.medium.com/how-to-bypass-cors-and-csp-policies-and-enable-cross-origin-requests-in- 中进行了解释a-浏览器-47fe269500fb
纯源代码可以从扩展中提取或从 https://github.com/marianc000/antiCors 下载