参数
请参阅 插件通用配置 了解所有插件可用的配置选项。
凭据
以下是可在 凭据 上配置的插件属性。
key_id
消费者的唯一标识符,用于识别关联的配置,例如密钥。
路由或服务
allowed_algorithms
允许的 HMAC 算法列表。
clock_skew
有效值:
大于或等于 1
允许的客户端请求时间戳与 APISIX 服务器当前时间之间的最大时间差(秒)。这有助于解决客户端与服务器时钟之间的时间同步差异,并防止重放攻击。计算时使用
Date请求头中的时间戳(必须为 GMT 格式)。signed_headers
客户端请求的 HMAC 签名中必须包含的请求头列表。自 API7 企业版 3.10.0 和 APISIX 3.17.0 起,该字段默认值为
["date"],因此除非覆盖该字段,否则必须对Date请求头签名。validate_request_body
如果为
true,则验证请求体的完整性,以确保其在传输过程中未被篡改。具体来说,插件会创建一个经过 SHA-256 哈希并使用 Base64 编 码的摘要,再将其与Digest请求头进行比较。如果缺少Digest请求头或摘要不匹配,则验证失败。max_req_body_size
当
validate_request_body为true时,插件读取的请求体大小上限(字节)。在 API7 企业版 3.9.15 及更高版本和 APISIX 3.17.0 及更高版本中,超过该大小的请求将以 HTTP 413 拒绝。API7 企业版 3.9.14、3.10.0 和 3.10.1 中的默认值为 524288 字节(512 KiB);API7 企业版 3.9.15 及更高版本和 APISIX 3.17.0 及更高版本中的默认值为 67108864 字节(64 MiB)。hide_credentials
如果为 true,则不将 authorization 请求头传递给上游服务。
anonymous_consumer
匿名消费者名称。如果配置了此项,允许匿名用户绕过认证。详情请参考 匿名消费者的速率限制。
realm
身份认证失败时返回的
401 Unauthorized响应中WWW-Authenticate响应头的 Realm。例如:如果
realm设置为hmac-auth,401 响应将包含以下响应头:WWW-Authenticate: hmac realm="hmac-auth"如果未配置
realm,401 响应将包含以下响应头:WWW-Authenticate: hmac realm="hmac"
该参数在 API7 企业版版本 3.9.2 及更高版本,以及 Apache APISIX 版本 3.15.0 及更高版本中可用。