Active Directoryサーバーにログインするために指定する必要がある「プリンシパル」は何ですか?プリンシパルがAD内のユーザーであれば、私はログインしようとしますか?または、ユーザーがADにアクセスする権限を持っている限り、指定したドメイン内のユーザーになることはできますか?JNDIでActive Directory Serverにログインする際に指定する必要がある「ドメイン」とは何ですか?
両方とも資格エラー49で試しました。しかし、ADがインストールされているサーバーのAdministratorアカウントを使用してldp.exeでADにログインできます。
ここに私のコードです。迅速な対応に感謝します。
Hashtable env= new Hashtable(11);
env.put(Context.SECURITY_AUTHENTICATION,"simple"); // Also tried none w/ the same error
// What principal should I use??
env.put(Context.SECURITY_PRINCIPAL,"CN=Ross,OU=Eng,DC=RossInc");//User
//env.put(Context.SECURITY_PRINCIPAL, user + "@" + domain); // Tried w/ the same error
env.put(Context.SECURITY_CREDENTIALS, "ross");//Password
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL,"ldap://myserver:389/DC=RossInc");
DirContext ctx = new InitialDirContext(env); <-- Fails with AuthenticationException: [LDAP: error code 49 - 8009030C
私はADとコードに「プリンシパル」を設定しました。それから私はそれを使用してログインし、同じエラーが発生しました! –
この例は、therディレクトリサービスに対してのみ有効です。 –