UnboundID 可将 LDAPS 放入 HTTP CONNECT 隧道
将 HTTPProxySocketFactory 与 TLS 套接字工厂配合使用,并注意它不直接支持代理认证。
UnboundID LDAP SDK 7.0.5 为 HTTP CONNECT 路由提供 HTTPProxySocketFactory。当目标是 LDAPS 时,请提供应用程序的 TLS 套接字工厂:
var proxyFactory =
new com.unboundid.util.HTTPProxySocketFactory(
"proxy.example.net", 8080, 10000, ldapsTlsFactory);
ldapsTlsFactory 是应用程序的 SSLSocketFactory,带有预期的服务器信任配置。将 proxyFactory 传给接受套接字工厂以及 LDAP 服务器实际主机名和端口的 LDAPConnection 构造函数。
还要配置连接的主机名验证。SDK 通过 LDAPConnectionOptions 提供 HostNameSSLSocketVerifier;仅信任证书颁发者与匹配预期 LDAP 主机不是同一种检查。
HTTP 代理必须允许 CONNECT 到该目标,LDAPS 常用端口 636。仅限 Web 目标端口的代理可能会拒绝。
该工厂有文档记载的限制很重要:与代理本身的通信不经过 TLS 加密,并且它不直接支持 HTTP 代理认证。提供 LDAPS TLS 工厂保护的是后续的目录连接,而不是补上缺失的代理登录机制。