1

LDAP ディレクトリには、グループにマッピングされたユーザーがいます。これらのグループは、他のグループにマッピングされる場合があります。例えば:

cn=group1,cn=groups,dc=example,dc=com
    uniquemember cn=user1,cn=user,dc=example,dc=com
cn=group2,cn=groups,dc=example,dc=com
    uniquemember cn=user2,cn=user,dc=example,dc=com
    uniquemember cn=group1,cn=user,dc=example,dc=com

したがって、User1 は Group1 に属しますが、User2 は Group2 に属し、Group2 は Group1 に属します

Grails 内では、User1 は Group1 に対する権限を持っていますが、User2 は Group2 に対する権限しか持っていません。私が見たところ、ツリーを再帰的に見る方法はありません。現実的には、おそらく 2 レベルの階層だけが必要ですが、それでもうまくいかないようです。

Custom UserDetailsContextManager を使用して、最初の結果を反復処理し、グループごとに LDAP を再クエリできるかどうかを確認しようとしていますが、もっと簡単で良い方法があるかどうかを確認したいと思いました。

4

2 に答える 2

1

おそらくすでにこれを見たでしょうが、これはドキュメントからのものです:

// グループ メンバーシップの再帰 (グループ内のグループ) をサポートしたくない場合は、次の設定を使用します // grails.plugins.springsecurity.ldap.authorities.groupSearchFilter = 'member={0}' // Active Directory 固有

// グループをメンバーとするグループ (再帰グループ) をサポートする場合は、次の grails.plugins.springsecurity.ldap.authorities.groupSearchFilter = '(member:1.2.840.113556.1.4.1941:={0})' を使用します// Active Directory 固有

http://grails-plugins.github.com/grails-spring-security-ldap/docs/manual/guide/2.%20Usage.html

于 2012-12-04T04:48:59.453 に答える