現在、Active Directory といくつかの LDAP を使用した小さなプロジェクトに取り組んでいます... LDAP サーバーに接続しようとすると、常に同じエラーが表示されます。
[LDAP: error code 49 - 80090308: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, data 52e, v1db1
私が知っている限り、これは資格情報が間違っていることを意味しますが、それらが正しいことは 100% 確信しています! パラメータを忘れたのでしょうか?
Hashtable<String, String> env = new Hashtable<String, String>();
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL, "ldap://libertycity.ch:389/dc=libertycity,dc=ch");
env.put(Context.SECURITY_AUTHENTICATION, "simple");
env.put(Context.SECURITY_CREDENTIALS, password);
env.put(Context.SECURITY_PRINCIPAL, "uid=" + username + ",ou=Users");
env.put("java.naming.ldap.attributes.binary", "objectSID");
DirContext ctx = new InitialDirContext(env);
私のコードは正しいと思いますか、それとも何か見落としていませんか? 何が問題で、どうすればそれを見つけることができますか?