我们在WebSphere 8.5上部署了Web Service,需要通过ssl与LDAP通信。仅当在JRE cacerts商店中导入ldap证书时,ssl通信才有效。
对于我们使用的其他服务,可以从控制台在CellDefaultTrustStore中导入证书,但只需在CellDefaultTrustStore中的控制台上导入证书,LDAP通信就无法正常工作。
是否需要特定配置以避免使用cacerts?感谢这方面的任何帮助。
以下是进行LDAP连接的代码片段[更新变量名称]
Hashtable env = new Hashtable();
env.put(DirContext.SECURITY_AUTHENTICATION, "simple");
env.put(DirContext.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.SECURITY_PRINCIPAL, bindUserName);
env.put(Context.SECURITY_CREDENTIALS, bindPassword);
// this is the url with ldaps://hostname
env.put(Context.PROVIDER_URL, url);
DirContext dirContext = new InitialDirContext(env);
答案 0 :(得分:0)
不幸的是,我不知道有关如何建立LDAP连接的详细信息。如果它转到cacerts文件,则表明正在使用JSSE默认SSL配置。所以关于调用的一些事情是将它转到JSSE缺省值而不是使用WebSphere套接字工厂。
答案 1 :(得分:0)
您可能希望利用动态出站SSL配置。