2013-10-29 37 views
1

使用ApacheDS 2.0我创建了嵌入式Ldap服务器。示例here如何启用ssl?我在LDAP API或DefaultDirectoryService类中找不到任何启用SSL的方法。尽管我能够配置keystone和密码。ApacheDS在嵌入式LDAP服务器上启用SSL

Java代码:

server = new LdapServer(); 
int serverPort = 10636; 
TcpTransport transports = new TcpTransport(serverPort); 
server.setTransports(transports); 

server.setKeystoreFile("foo/bar.jks"); 
server.setCertificatePassword("changeit"); 
server.loadKeyStore(); 
server.setDirectoryService(service); 

System.out.println("SSL ? " + server.isEnableLdaps(transports)); //this prints false 

server.start(); 

回答

0

我们需要在运输启用。

TcpTransport transports = new TcpTransport(serverPort); 
transports.setEnableSSL(true); 
+1

看起来这是不够的。我看到了ssl握手问题。但可能与我正在使用的证书有关。 引起:javax.net.ssl.SSLHandshakeException:共同没有密码套件 – DaBears