HMAC令牌验证
使用防火墙规则HMAC验证功能打开外部链接 验证防火墙规则表达式中的基于哈希的消息身份验证代码(HMAC)令牌。
以下防火墙规则阻止对不包含有效HMAC的请求。
该规则提供在网站和之间共享的密钥的值,作为HMAC验证功能的第一个参数打开外部链接,它使用的价值打开外部链接:
表达行动
该函数将使用生成的值与中编码的值进行比较http.request.uri。
如果MAC值匹配,则
那么令牌是有效的,函数返回true。
因为本示例中的表达式使用not运算符,它只有当HMAC令牌匹配不是有效的。当令牌无效时,会触发操作并阻止请求。
重要的
当不对使用不可选的flags参数时,必须在MessageMAC参数中对mac的base64值进行URL编码。
有关更多信息,请参见函数:HMAC验证。打开外部链接。
使用相同的密钥来保护多个路径
您可以使用相同的密钥来保护多个URI路径。
在上面的示例中对此进行了说明,该示例http.request.uri作为MessageMAC参数传递给验证函数。
由于包括资产的路径并且为每个请求提取了该值,因此验证功能将所有请求URI评估为使用相同的秘密密钥。
请注意,虽然您可以使用相同的密钥来认证多个路径,但是必须为要认证的每个唯一消息生成一个HMAC令牌。