你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
默认情况下,当 Azure 应用程序网关上的 Azure Web 应用程序防火墙 (WAF) 由于匹配的规则而阻止请求时,它会返回一个 403 状态代码,并显示“请求被阻止”消息。可以通过配置自定义状态代码和消息来自定义响应,更好地贴合你的用例。
本文介绍如何配置在 Azure 应用程序网关的 Web 应用程序防火墙 (WAF) 使用 Azure 门户阻止请求时显示的自定义响应页。 还可以使用 Azure CLI 或 PowerShell 配置自定义响应。
重要
Azure 应用程序网关 Web 应用程序防火墙(WAF)中的自定义响应目前为预览版。 有关适用于 Beta 版、预览版或尚未正式发布的 Azure 功能的法律条款,请参阅 适用于 Microsoft azure 预览版的补充使用条款 。
配置自定义响应状态代码和消息
若要自定义响应状态代码和正文,请执行以下步骤:
在此示例中,我们将默认的 403 响应代码更改为 429,并设置一条简短消息,指出“请求已被阻止”。
局限性
为 Azure 应用程序网关 WAF 配置自定义响应时,以下限制适用:
- 最多可以在一个应用程序网关内启用 20 个 WAF 策略,其中包含自定义块响应状态代码和正文。
- 可以使用以下自定义状态代码之一:200、403、405、406、429、990、991、992、993、994、995、996、997、998、999。
- 自定义块响应正文的最大大小为 32KB。
- 使用 Azure 资源管理器 (ARM) API 时,必须为自定义块响应正文使用 base64 编码。
- 适用于容器的应用程序网关 WAF 不支持自定义块响应状态代码和正文。