我在连接 Active Directory 时遇到问题。有问题的代码如下:
Hashtable<Stirng,String> env = new Hashtable<String,String>();
env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL,"ldap://192.168.0.100:389");
env.put(Context.SECURITY_AUTHENTICATION,"simple");
env.put(Context.SECURITY_PRINCIPAL,"TEST\\Administrator");
env.put(Context.SECURITY_CREDENTIALS,"password");
LdapContext ctx = new InitialLdapContext(env, null);
当我调试它时,它给了我一个错误:
javax.naming.CommunicationException: 192.168.0.100:389 [Root Exception is java.security.AccessControlException: access denied ("java.net.SocketPermission" "192.168.0.100:389" "connect.resolve")]
我尝试连接的 IP 是 192.168.0.99 (Windows 7) 192.168.0.100 安装了 Windows 2008,当我尝试从 192.168.0.100 本身连接时,我仔细检查了连接没有任何问题。你能给我一点建议吗?如果需要,我很乐意提供更多信息