Azure Web 应用程序防火墙和 Azure Policy

Azure Web 应用程序防火墙 (WAF) 与 Azure Policy 结合,可帮助强制实施组织标准并大规模评估 WAF 资源的符合性。 Azure Policy 是一款治理工具,它提供一个聚合视图来评估环境的整体状态,并允许用户以按资源、按策略的粒度向下钻取。 Azure Policy 还可以对现有资源执行批量修正,以及对新资源自动修正,从而帮助资源符合规范。

适用于 Web 应用程序防火墙的 Azure Policy

Azure Policy 内置了多个用于管理 WAF 资源的定义。 策略定义细分及其功能情况如下所示:

启用 Web 应用程序防火墙 (WAF)

  • 应为应用程序网关启用 Web 应用程序防火墙 (WAF):根据资源创建时是否存在 WAF 评估应用程序网关。 策略定义具有三种效果:审核、拒绝和禁用。 审核会跟踪应用程序网关没有 WAF 的情况,并允许用户查看应用程序网关不合规的方面。 如果未附加 WAF,则“拒绝”会阻止创建任何应用程序网关。 “已禁用”会关闭策略分配。

强制检测或阻止模式

  • Web 应用程序防火墙 (WAF) 应使用指定的应用程序网关模式:要求应用程序网关的所有 Web 应用程序防火墙策略都启用“检测”检或“防护”模式。 策略定义具有三种效果:审核、拒绝和禁用。 审核会跟踪 WAF 不符合指定模式的情况。 如果未处于正确模式,“拒绝”将阻止创建任何 WAF。 “已禁用”会关闭策略分配。

要求请求检查

  • Azure 应用程序网关上的 Azure Web 应用程序防火墙应已启用请求正文检查:确保与 Azure 应用程序网关相关联的 Web 应用程序防火墙启用了请求正文检查。 使用此功能,WAF 可以检查 HTTP 正文中可能无法在 HTTP 标头、Cookie 或 URI 中评估的属性。

需要资源日志

  • Azure 应用程序网关应启用资源日志:要求在所有应用程序网关(包括 WAF)上启用资源日志和指标。 此策略定义具有两种效果:AuditIfNotExists 和 Disable。 AuditIfNotExists 可跟踪应用程序网关何时未启用资源日志和指标,并通知用户应用程序网关不符合要求。 “已禁用”会关闭策略分配。
  • 在应用程序网关上将 WAF 从 WAF 配置迁移到 WAF 策略:如果具有 WAF 配置(而不是 WAF 策略),则你可能希望移动到新的 WAF 策略。 Web 应用程序防火墙 (WAF) 策略提供了一组比 WAF 配置更丰富的高级功能,可提供更大的规模和更好的性能,并且与旧式 WAF 配置不同,WAF 策略可以一次性定义,并在多个网关、侦听器和 URL 路径之间共享。 今后,最新功能和将来的增强功能将仅通过 WAF 策略提供。

创建 Azure Policy

  1. 在 Azure 主页上,在搜索栏中键入策略,然后选择“Azure Policy”图标。

  2. 在“Azure Policy”服务的“创作”,选择“分配”。

Screenshot of Assignments tab within Azure Policy.

  1. 在“分配”页上,选择顶部的“分配策略”图标。

Screenshot of Basics tab on the Assign Policy page.

  1. 在“分配策略”页的“基本”选项卡上,更新以下字段:
    1. 范围:选择策略适用的 Azure 订阅和资源组。
    2. 排除:从策略分配范围中选择要排除的任何资源。
    3. 策略定义:选择要应用于具有排除项的范围的策略定义。 在搜索栏中键入“Web 应用程序防火墙”,以选择相关的 Web 应用程序防火墙 Azure Policy。

Screenshot that shows the 'Policy Definitions' tab on the 'Available Definitions' page.

  1. 选择“参数”选项卡,并更新策略分配参数。 要进一步了解参数的功能,请将鼠标悬停在参数名称旁边的信息图标上,以获取进一步说明。

  2. 选择“查看 + 创建”以最终确定策略分配。 策略分配大约需要 15 分钟,才会对新资源生效。