跳到主要内容

参数

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

该插件支持使用 env:// 前缀引用环境变量中的敏感参数值,或使用 secret:// 前缀引用 Secret 管理器(如 HashiCorp Vault 的 KV 密钥引擎)中的值。更多信息,请参阅环境变量中的插件密钥

凭据

以下是可在凭据上配置的插件属性。

  • user_dn

    string

    必填

    有效值:

    1 到 4096 个字符


    该消费者所代表的目录条目的可分辨名称(DN),例如 uid=johndoe,ou=users,dc=example,dc=org。它必须与插件通过目录检索解析出来的 DN 一致。

路由或服务

以下是可用于 路由 (Routes)服务 (Services) 配置的插件属性。

  • ldap_uri

    string

    必填

    有效值:

    1 到 256 个字符


    LDAP 目录的地址,格式为 hosthost:port。省略端口时,启用 use_ldaps 使用 636,否则使用 389

  • base_dn

    string

    必填

    有效值:

    1 到 4096 个字符


    插件检索用户时所在子树的可分辨名称,例如 ou=users,dc=example,dc=org

  • attribute

    string

    默认值:cn

    有效值:

    符合 RFC 4512 的属性描述,最多 256 个字符


    用于与客户端提供的用户名匹配的属性。检索过滤器为 (attribute=username),因此大多数 OpenLDAP 目录适合使用 uid,Active Directory 适合使用 sAMAccountName

  • bind_dn

    string

    有效值:

    1 到 4096 个字符


    插件执行检索时所绑定的可分辨名称。未设置时以匿名方式检索。设置该字段时必须同时设置 ldap_password

  • ldap_password

    string

    有效值:

    1 到 4096 个字符


    bind_dn 对应的密码。设置 bind_dn 时必填。启用数据面数据加密时,该字段会落盘加密。

  • use_ldaps

    boolean

    默认值:false


    如果为 true,则通过 LDAPS 连接目录。与 use_starttls 互斥。

  • use_starttls

    boolean

    默认值:false


    如果为 true,则通过 StartTLS 把明文连接升级为 TLS。与 use_ldaps 互斥。

  • ssl_verify

    boolean

    默认值:true


    如果为 true,则在通过 LDAPS 或 StartTLS 连接时校验目录的 TLS 证书。

  • timeout

    integer

    默认值:10000

    有效值:

    1 到 60000 之间(含)


    与目录建立连接的超时时间,单位为毫秒。

  • size_limit

    integer

    默认值:2

    有效值:

    大于或等于 2


    目录为本次检索返回的最大条目数。默认值 2 足以发现用户名存在歧义的情况;此时插件会拒绝请求,而不是绑定到其中任意一条匹配。

  • time_limit

    integer

    默认值:5

    有效值:

    大于或等于 0


    目录对本次检索施加的时间上限,单位为秒。设为 0 表示使用目录自身的默认值。

  • consumer_required

    boolean

    默认值:true


    如果为 true,则认证成功的用户还必须能映射到某个凭据中记录了其可分辨名称的消费者,否则请求被拒绝。设为 false 表示只对接目录完成认证,不涉及消费者。

  • header_type

    string

    默认值:ldap

    有效值:

    ldapbasic


    插件在 AuthorizationProxy-Authorization 请求头中接受的认证方案,同时也是 WWW-Authenticate 挑战头中声明的方案。两种取值下凭据本身都是 base64(username:password),因此 basic 对应标准的 HTTP Basic 交互。

  • realm

    string

    默认值:ldap


    返回给未认证客户端的 WWW-Authenticate 请求头中声明的 realm。

  • keepalive

    boolean

    默认值:true


    如果为 true,则保持与目录的连接存活,使其在请求之间复用。

  • keepalive_timeout

    integer

    默认值:60000

    有效值:

    大于或等于 1000


    连接池中与目录的连接在空闲多久后被关闭,单位为毫秒。

  • keepalive_pool_size

    integer

    默认值:5

    有效值:

    大于或等于 1


    每个 worker 与目录之间连接池的最大连接数。

  • keepalive_pool_name

    string

    有效值:

    1 到 256 个字符


    连接池的名称。设置该字段可以把不同插件配置的连接隔离到各自的连接池中。