如何在不绕过规则的情况下为Azure Front Door WAF添加自定义Content-Type
Azure Front Door WAF 允许 application/merge-patch+json Content-Type 且保留完整防护的方案
目前Azure Front Door的托管WAF规则集(如OWASP核心规则集)中,允许的Content-Type列表由微软维护,无法直接修改原有规则的允许列表,但可以通过自定义优先规则实现需求——既允许application/merge-patch+json的PATCH请求,又不绕过其他WAF安全规则。
具体实现步骤:
- 先定位触发拦截的具体规则:通常是OWASP规则中的
920350(检查请求Content-Type是否在允许列表内),确认规则ID后进行后续配置。 - 创建自定义规则,将优先级设为高于托管规则(比如设为1,托管规则默认优先级多为100及以上),确保该规则先于拦截规则执行:
- 匹配条件:
- 条件1:请求方法等于
PATCH - 条件2:请求头
Content-Type包含application/merge-patch+json
- 条件1:请求方法等于
- 逻辑运算符:AND
- 动作选择允许,但注意不要勾选“跳过后续规则”(这是关键,确保其他WAF规则依然会对请求执行完整的安全检查)
- 匹配条件:
方案优势:
自定义规则优先级更高,当请求匹配到该规则时,会直接通过Content-Type的检查,但后续所有WAF安全规则(如SQL注入、XSS、命令注入防护等)依然正常生效,完全避免了禁用规则、添加排除项带来的安全风险。
内容的提问来源于stack exchange,提问作者ewramner
相关产品推荐
相关产品推荐

