使用RubyLDAP ldap进行客户端身份验证

时间:2010-05-19 03:38:05

标签: ruby ldap ssl openldap

我正在尝试实现使用LDAP over SSL(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

但是,这不是一个选择。

谢谢,

马塞洛。

1 个答案:

答案 0 :(得分:0)

我不知道这是否仍然有意义。 您需要客户证书吗?您还可以在openldap中使用绑定用户和acl's。与客户端证书相比,在openldap服务器中这将更加容易且易于管理。

要启用客户端ssl,您需要将ruby-ldap指向正确的CA证书,即颁发服务器证书的证书。在您客户的/etc/openldap/ldap.conf

TLS_CACERT /etc/ssl/yourldapsca.pem