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 を再クエリできるかどうかを確認しようとしていますが、もっと簡単で良い方法があるかどうかを確認したいと思いました。