如何操作 ADFS 3 的 x-frame-options HTTP 标头?

如何操作 ADFS 3 的 x-frame-options HTTP 标头?

默认情况下,ADFS 3 响应包含“X-Frame-Options: DENY”HTTP 标头。这可防止 ADFS 在 iframe 中运行,因为这为点击劫持攻击提供了机会。

目前,我的公司正在实施一项集成,其中应对此安全规则做出例外:特定域上的页面应该能够将 ADFS 嵌入 iframe。

但 ADFS 似乎不允许立即更改此设置。那么修改此 HTTP 标头的最佳方法是什么?

例如,正如 RFC 中所建议的(https://www.rfc-editor.org/rfc/rfc7034#section-2.3.2.3)?

  1. 想要在框架中呈现请求内容的页面会将其自己的来源信息提供给通过查询字符串参数提供要框架的内容的服务器。

  2. 服务器验证主机名是否符合其标准,以便允许目标资源框架页面。例如,这可以通过查找允许框架页面的受信任域名白名单来实现。例如,对于 Facebook“赞”按钮,服务器可以检查提供的主机名是否与该“赞”按钮所需的主机名相匹配。

  3. 如果在步骤 2 中满足正确的条件,服务器将在“X-Frame-Options: ALLOW-FROM”中返回主机名。

  4. 浏览器强制执行“X-Frame-Options:ALLOW-FROM”标头。

答案1

使用 Web 服务器作为 ADFS 3 前面的反向代理并修改 HTTP 标头。这可以通过以下方式实现阿帕奇或者Nginx。在交付之前请彻底测试,因为 ADFS 3 可能不喜欢使用代理。我没有办法提供概念证明

这是需要管理的另一个服务器和服务,但我明白这是您的要求,必须见

答案2

相关内容