跳到主要内容

参数

请参阅 插件通用配置 了解所有插件可用的配置选项。

  • uri

    string


    required


    外部授权服务的 URI。

  • ssl_verify

    boolean


    default: true


    如果为 true,验证授权服务的 SSL 证书。

  • request_method

    string


    default: GET


    vaild vaule:

    GET or POST


    APISIX 用来向外部授权服务发送请求的 HTTP 方法。默认情况下,APISIX 向外部授权服务发送 GET 请求。

    当设置为 POST 时,APISIX 会向外部授权服务发送 POST 请求以及请求 Body。但这并不推荐。如果授权决策取决于 POST Body 中的请求参数,建议使用 $post_arg.* 提取所需字段,并通过 extra_headers 字段传递它们。这种方法避免了发送完整的请求 Body,减少了开销,并使授权服务专注于通过头信息进行决策。

  • request_headers

    array[string]


    应转发到外部授权服务的客户端请求头。如果未配置,则仅转发 APISIX 添加的头,例如 X-Forwarded-*

  • upstream_headers

    array[string]


    应转发到上游服务的外部授权服务响应头。如果未配置,则没有头会被转发到上游服务。

  • client_headers

    array[string]


    当认证失败时,应转发给客户端的外部授权服务响应头。如果未配置,则没有头会被转发给客户端。

  • extra_headers

    object


    发送到授权服务的额外头。支持值中的 内置变量

    该功能目前仅在 API7 企业版中可用,并将在 APISIX 3.14.0 中可用。

  • timeout

    integer


    default: 3000


    vaild vaule:

    介于 1 到 60000 之间(含边界值)


    外部授权服务 HTTP 调用的超时时间(以毫秒为单位)。

  • keepalive

    boolean


    default: true


    如果为 true,则保持连接打开以用于多个请求。

  • keepalive_timeout

    integer


    default: 60000


    vaild vaule:

    大于或等于 1000


    建立的 HTTP 连接在关闭前的空闲时间。

  • keepalive_pool

    integer


    default: 5


    vaild vaule:

    大于或等于 1


    连接池中的最大连接数。

  • allow_degradation

    boolean


    default: false


    如果为 true,允许 APISIX 在插件或其依赖项不可用时继续处理请求(不使用插件)。

  • status_on_error

    integer


    default: 403


    vaild vaule:

    介于 200 到 599 之间(含边界值)


    当外部授权服务出现网络错误时,返回给客户端的 HTTP 状态码。