【发布时间】:2019-04-16 12:39:27
【问题描述】:
我们公司(以及其他一些公司)保持 PCI 合规性。作为我们最近一次安全审计的一部分,我们的基础架构团队和审计员确定应该完全禁用 OPTIONS 标头,因为它构成了安全威胁。
我们在 Angular 6/7 网站上使用 .NET Web API(在多个子域上)。现在禁用 OPTIONS 标头后,来自 Angular 的预检调用被拒绝,我们的应用程序在第一次 API 调用另一个子域时失败(例如,身份验证,这是我们的第一个功能之一,并且在 auth.mycompany.com 上运行我们的应用程序app.mycompany.com)。
我已经阅读了大量内容(如果有人将其标记为重复,如果它导致解决方案,我会很高兴:))但是,我无法找到任何可行的解决方案。大多数文章都要求将有效的 OPTIONS 调用列入白名单(Why is HTTP Options request insecure 和 https://security.stackexchange.com/questions/138567/why-should-the-options-method-not-be-allowed-on-an-http-server 是两个示例)或在同一子域上设置代理(Preflight CORS requests with Basic Authentication in Angular 2)。
我的问题是,有没有一种方法可以配置 OPTIONS 标头,允许我们通过安全扫描并仍然允许来自 Angular 的 CORS 调用?
提前感谢您的帮助!
【问题讨论】:
标签: .net angular api cors options