参数
请参阅 插件通用配置 了解所有插件可用的配置选项。
该插件支持使用 env:// 前缀 引用环境变量中的敏感参数值,或使用 secret:// 前缀引用 Secret 管理器(如 HashiCorp Vault 的 KV 密钥引擎)中的值。更多信息,请参阅环境变量中的插件和密钥。
凭据
以下是可在凭据上配置的插件属性。
user_dn
有效值:
1 到 4096 个字符
该消费者所代表的目录条目的可分辨名称(DN),例如
uid=johndoe,ou=users,dc=example,dc=org。它必须与插件通过目录检索解析出来的 DN 一致。
路由或服务
以下是可用于 路由 (Routes) 或 服务 (Services) 配置的插件属性。
ldap_uri
有效值:
1 到 256 个字符
LDAP 目录的地址,格式为
host或host:port。省略端口时,启用use_ldaps使用636,否则使用389。base_dn
有效值:
1 到 4096 个字符
插件检索用户时所在子树的可分辨名称,例如
ou=users,dc=example,dc=org。attribute
有效值:
符合
RFC 4512的属性描述,最多 256 个字符用于与客户端提供的用户名匹配的属性。检索过滤器为
(attribute=username),因此大多数 OpenLDAP 目录适合使用uid,Active Directory 适合使用sAMAccountName。bind_dn
有效值:
1 到 4096 个字符
插件执行检索时所绑定的可分辨名称。未设置时以匿名方式检索。设置该字段时必须同时设置
ldap_password。ldap_password
有效值:
1 到 4096 个字符
bind_dn对应的密码。设置bind_dn时必填。启用数据面数据加密时,该字段会落盘加密。use_ldaps
如果为 true,则通过 LDAPS 连接目录。与
use_starttls互斥。use_starttls
如果为 true,则通过 StartTLS 把明文连接升级为 TLS。与
use_ldaps互斥。ssl_verify
如果为 true,则在通过 LDAPS 或 StartTLS 连接时校验目录的 TLS 证书。
timeout
有效值:
1 到 60000 之间(含)
与目录建立连接的超时时间,单位为毫秒。
size_limit
有效值:
大于或等于 2
目录为本次检索返回的最大条目数。默认值
2足以发现用户名存在歧义的情况;此时插件会拒绝请求,而不是绑定到其中任意一条匹配。time_limit
有效值:
大于或等于 0
目录对本次检索施加的时间上 限,单位为秒。设为
0表示使用目录自身的默认值。consumer_required
如果为 true,则认证成功的用户还必须能映射到某个凭据中记录了其可分辨名称的消费者,否则请求被拒绝。设为
false表示只对接目录完成认证,不涉及消费者。header_type
有效值:
ldap或basic插件在
Authorization或Proxy-Authorization请求头中接受的认证方案,同时也是WWW-Authenticate挑战头中声明的方案。两种取值下凭据本身都是base64(username:password),因此basic对应标准的 HTTP Basic 交互。realm
返回给未认证客户端的
WWW-Authenticate请求头中声明的 realm。keepalive
如果为 true,则保持与目录的连接存活,使其在请求之间复用。
keepalive_timeout
有效值:
大于或等于 1000
连接池中与目录的连接在空闲多久后被关闭,单位为毫秒。
keepalive_pool_size
有效值:
大于或等于 1
每个 worker 与目录之间连接池的最大连接数。
keepalive_pool_name
有效值:
1 到 256 个字符
连接池的名称。设置该字段可以把不同插件配置的连接隔离到各自的连接池中。