tomcat/jndi で認証ユーザーを使用して、グループ検索のために LDAP にバインドするにはどうすればよいですか?
問題:
- サーブレットに対する単純な FORM ベースの Tomcat/jndiRealm/ldap 認証
- ユーザーが適切に認証されるようにセットアップ済み (Bind モード)
- ただし、ldap サーバーでは、匿名バインドが関心のあるグループを表示することを許可していません。現在認証中のユーザーは、これらのグループを表示できます。
- connectionName と connectionPassword を使用したくない
現在認証中のユーザーがロール検索を実行できるようにしたいのですが、Bind モードでも、wireshark は最初のユーザー認証後に匿名バインドが行われることを示しています。
機能するが、私が望むものではない回避策:
- グループを表示できるユーザーの connectionName と connectionPassword を使用する
- レルムに commonRole を設定する
(私はLDAP サーバーを制御できません)
私の(動作していない)server.xmlから
<Realm className="org.apache.catalina.realm.JNDIRealm"
connectionURL="ldap://localhost:389"
userPattern="cn={0},ou=people,o=myO,dc=myDc,dc=com"
roleBase="ou=groups,o=myO,dc=myDc,dc=com"
roleName="cn"
roleSearch="member={0}" />