プログラムをLDAPと統合しようとしています。ここにActive Directoryサーバーがあります。これは明らかにLDAPを話します。自分のコードをデバッグしようとする前に、サーバーの内容を確認したいと思います。 LDAPサーバーと通信できると主張する jxplorer というプログラムを見つけました。
しかし、私はそれを機能させることができないようです。私は設定を使用しています:
私が得ているエラーは:
javax.naming.AuthenticationException: [LDAP: error code 49 - 80090308: LdapErr: DSID=0C090334, comment: AcceptSecurityContext error, data 525, vece ]
ここにある他のLDAPの人物は、525は「ユーザーが見つかりません」と言っており、おそらくユーザー名を「LDAP命名法」で指定する必要があると仮定しています。
JxplorerでADに接続する方法を知っている人はいますか?
方法を見つけました:ユーザーのログインではありません。次のようなLDAP DNです。
CN=My Name,OU=My Company,DC=server,DC=local
LDAPユーザーIDとパスワードを直接ハードコーディングして渡します。
例:
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,"com.Sun.jndi.ldap.LdapCtxFactory");
env.put(Context.SECURITY_AUTHENTICATION,"simple");
env.put(Context.REFERRAL, "follow");
env.put(Context.SECURITY_PRINCIPAL,"adminuserid");
env.put(Context.SECURITY_CREDENTIALS,"adminPassword");
env.put(Context.PROVIDER_URL,"ldapUrllink");
DirContext ctx = new InitialDirContext(env);
これはうまくいくはずです。
ありがとうサジット