1

重複の可能性:
OU にない場合に検索する

OU(組織単位) を検索から除外しようとしています

解雇された人や、もう雇用されていない人を表示しないように、アクティブ ディレクトリで行っています。

これらの人々は、OU私が見せたくない「サスペンド」と呼ばれる状態で存在しています。私は .however の行に沿って何かをしようとしましたが、(!OU=Suspended)それはうまくいきません。私は .net と System.DirectoryServices を使用しています。これが私の現在の検索フィルターです:

search.Filter = String.Format ( "(&(objectCategory=person)(objectClass=user)(sn={0}*)(!employeeType=Student)(!(memberOf=CN=NoDirectoryEntry,OU=Groups,OU=Staff,OU=SPFLDCOL,DC=scad,DC=spfldcol,DC=edu)))", lname );
4

1 に答える 1

1

Active-Direcory の LDAP 検索でフィルターを使用して OU を除外することはできません。

標準の LDAP では、LDAP-SEARCH を 4 つのパラメーターを持つ一種の関数として記述しているため、次のようになります。

  1. 識別名 (DN) である検索を開始するうなずき
  2. 取り戻したい属性
  3. 検索の深さ (ベース、1 レベル、サブツリー)
  4. フィルター。

残りの解決策は次のとおりです。

  • お互いのOUを探す。
  • サスペンドされた OU の各オブジェクトに専用の属性を使用し、この属性でフィルター処理します。
于 2012-06-11T15:15:11.817 に答える