我正在尝试实现使用基于SSL的LDAP(SSL,而不是TLS)的功能,它需要连接到启用了SSL的LDAP服务器(即OpenLDAP),进行绑定,然后再执行任何其他查询。它还需要支持客户端身份验证,这就是棘手的地方:客户端是用Ruby编写的Web应用程序,并且我们正在使用RubyLDAP(到目前为止,我们已将其用于非SSL ldap方面,取得了巨大的成功)。
我的问题是:在执行LDAP :: SSLConn时,是否可以加载客户端证书并将其数据通过电线发送到LDAP服务器?我没有在API文档(http://ruby-ldap.sourceforge.net/rdoc/)上找到任何明显的东西,也没有在Google周围闲逛。
[我知道我可以通过将以下内容放在slapd.conf(OpenLDAP)上来防止服务器请求证书:
TLSVerifyClient never
但是,这里不是一个选项。
谢谢,
马塞洛。
我不知道这是否仍然有意义。您需要客户证书吗?您还可以在openldap中使用绑定用户和acl's。与客户端证书相比,这在您的openldap服务器中更容易管理。
要启用客户端ssl,您需要将ruby-ldap指向正确的CA证书,即颁发服务器证书的证书。在您的客户端上,在/etc/openldap/ldap.conf
TLS_CACERT /etc/ssl/yourldapsca.pem