2016-07-06 5 views
0

LDAPには、groupMembershipを持たないユーザーをフィルタリングできるフィルタがありますか?私はグループ別のフィルタリングに関する情報を見つけることができますが、「ユーザーがどのグループにも属していない場合は、それらを含めないでください」と言いたいと思います。グループメンバーシップを持つユーザーのみを許可するLDAPフィルタ

+0

https://confluence.atlassian.com/display/DEV/How+to+write+LDAP+search+filters – AK1

+0

どのLDAPサーバーを使用していますか? ANYグループまたは特定のグループのメンバーであるユーザーですか? – jwilleke

答えて

1

これは、(&(objectClass=person)(!(groupMembership=*)))のようなものです。これは、groupMembershipが存在しないすべてのユーザーを尋ねるだけです。 groupMembershipは、ユーザーのバックリンク属性です。

+0

eDirectoryでのみ動作します。 – jwilleke

+0

あなたは 'groupMembership'属性を意味していますか?ええ、どのLDAPを使用しているのかは分かりませんでした。 – ChadSikorra

0

すべてのディレクトリが、メンバーであるグループごとに静的属性をユーザーに格納するわけではありません。

eDirectoryは、たとえば、メンバーであるユーザーをリストするグループにメンバーを保管します。ユーザーにGroupMembershipを格納し、ユーザーが属するすべてのグループをリストします。

Active Directoryは、グループにメンバを格納しますが、グループメンバシップデータをユーザーに静的に格納しません。むしろ、MemberOfというユーザーの動的属性を定義します。この属性は、属性をクエリするたびに評価されます。

あなたはその属性の値のためのADを要求したとき、それが機能的に(&(objectClass=Group)(Member=cn=MyUser,ou=MyOU,dc=domain,dc-local))

のようなもので、バックグラウンドでLDAPクエリがこのように属性がのMemberOfあるんが、私は、クエリことは確かではないよ、です(!(memberOf=*))の場合、すべてのオブジェクトに対して暗黙のクエリを実行することを意味するので、痛いかもしれません。

関連する問題