2

特定の属性が他の 1 つ以上のレコードと一致するレコードを検索できる LDAP クエリの例を探しています。たとえば、ユーザー ID は異なりますが、従業員 ID は同じユーザー オブジェクトです。これは可能ですか?

4

3 に答える 3

1

フィルター自体の中でサブクエリを実行することはできません。この場合、私が正しく理解している限り、一致するユーザーを見つけたいと思います:

  • objectClassUser
  • の値に一致employeeID
  • 上記のサブセットから、DISTINCT「userid」ですべてを検索します

userid何を探すべきか、または何を探すべきではないかがわかっている場合は、最初の節を拡張してAND、その属性を見つけること、または見つけないことを含めることができます。

userid12345 と等しくない:

(&(objectClass=person)(employeeID=JSmith)(!(userid=12345)))

userid12345 に等しい:

(&(objectClass=person)(employeeID=JSmith)(userid=12345)

于 2013-04-30T14:07:50.707 に答える
1

単一の LDAP クエリから 探している emplyeeID 値がわからない場合。

これを行うための LDAP ツール、Duplicate Attribute Value Locater Toolを作成しました。

-ジム

于 2013-04-30T14:51:13.250 に答える
0

「myattribute」のこの例を見つけました。ディレクトリのサイズによっては、実行に時間がかかる場合があります。その場合は、属性セクション {attr=aa*、attr=ab*、attr=ac* など} で分割します。

ldapsearch -x -h ldapserver.domain.com -b ou=myldap,o=mydomain.com "(&(myattribute=aa*))" myattribute | grep '^myattribute:' | sort | uniq -c| sort -n|awk '$1 > 1 { print }'
于 2022-02-10T18:20:19.623 に答える