我的问题是我必须将应用程序部署到linux服务器上。身份验证基于远程活动目录。一切都运行正常,但由于我已部署到Linux服务器上,我的身份验证不再有效。
这是我的身份验证码:
public boolean connectUser(String login, String password) {
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL, HOST);
env.put(Context.SECURITY_AUTHENTICATION, "simple");
env.put(Context.SECURITY_PRINCIPAL, login+"@nazoos.com");
env.put(Context.SECURITY_CREDENTIALS, password);
// Create the initial context
try {
DirContext ctx = new InitialDirContext(env);
Log.getLogger().debug("UserService : Connexion ==> OK ");
return true;
} catch (NamingException e) {
Log.getLogger().debug("UserService : Erreur Connexion :"+e.getMessage());
return false;
}
}
这是我的错误
Caused by: java.net.UnknownHostException: nazoos.com
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:178)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at java.net.Socket.<init>(Socket.java:425)
at java.net.Socket.<init>(Socket.java:208)
at com.sun.jndi.ldap.Connection.createSocket(Connection.java:368)
at com.sun.jndi.ldap.Connection.<init>(Connection.java:203)
... 54 more
我搜索了很多,但找不到任何东西。
答案 0 :(得分:1)
ldap://<IP_or_hostname>:389