- - PR -
JNDIを利用してアクティブディレクトリにアクセスするには
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2004-01-13 19:40
はじめまして
いきなり質問なのですが LDAPサーバとしてアクティブディレクトリを使用します。 JNDIを利用しこのサーバにアクセスする際、 何か特殊な処理が必要になるのでしょうか? Hashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.PROVIDER_URL,"ldap://ウィンドウズ2KS:389"); env.put(Context.SECURITY_AUTHENTICATION, "simple"); env.put("java.naming.referral","follow"); DirContext ctx = new InitialDirContext(env); SearchControls constraints = new SearchControls(); constraints.setSearchScope(SearchControls.SUBTREE_SCOPE); NamingEnumeration results = ctx.search("dc=xxx,dc=com", "cn=*", constraints); のようにソ−スは書いてあります。 アクティブディレクトリのusers以下のユーザを取得するには 何か別の処理を行わなければならないでしょうか? 識者の方ご教授お願いいたします。 乱文失礼いたしました。 |
|
投稿日時: 2004-01-13 20:29
「こうしたいけど、こうなってしまう」と書いて頂かないと、コメントのしようがありませんSECURITY_PRINCIPALとSECURITY_CREDENTIALSを指定してログインするとお望みの結果は得られますか? |
|
投稿日時: 2004-01-13 20:56
レスありがとうございます。
状態は ベース以下を取得できない状態です。 また、SECURITY_PRINCIPAL、SECURITY_CREDENTIALSを指定しても取得することができませんでした。 といいますか、そちらを指定するとルートすら取得できない状態でした。 (アクセスが拒否されました) また LDAPBrowserを利用してアクセスした場合でも 同じ状態になりました。 |
|
投稿日時: 2004-01-13 21:44
ログインユーザに権限が無いのではないでしょうか?
権限の付け方等はこちらで検索&質問されるのが良いと思います。 |
|
投稿日時: 2004-01-14 00:59
早いレスありがとうございます
アクティブディレクトリを見直して もう一度報告をいたします。 |
|
投稿日時: 2004-01-14 14:02
解決いたしました。
アクティブディレクトリの権限のあるユーザにて env.put(Context.SECURITY_PRINCIPAL, "権限ユーザ@ウィンドウズ2KS"); env.put(Context.SECURITY_CREDENTIALS, "admin"); env.put(Context.SECURITY_AUTHENTICATION, "simple"); を試したところ取得することができました。 Context.SECURITY_PRINCIPAL, "cn=権限ユーザ@ウィンドウズ2KS" とやっていたため認証することができなかったようです。 レスをいただいたぽんさんありがとうございました。 |
1
