PowerShellでは、特定のOU内のユーザーの一覧を取得するためにDirectoryEntryおよびDirectorySearcherを使用する方法を既に知っています。このメソッドの結果は主にADで探しているものですが、Win32_UserAccountというWMIクエリを使用して同じ情報を取得する方が簡単です。私はこのクラスのプロパティがより好きで、SIDはすでに正しい文字列形式です(最初のメソッドでは、16進バイト配列から文字列に変換する必要があります)。OUでWin32_UserAccountの結果をフィルタリングする方法
Win32_UserAccountを使用した場合の問題は、OUでフィルターをかける方法が見つからないということです。私は正常にドメインと名前でフィルタリングし、WQLでいくつかの推測を試みましたが、OUフィルタの構文を見つけることはできませんでした。私の試みのほとんどが「無効なクエリ」になります。その後、私はDirectoryEntryを/たDirectorySearcherを使用してに戻りますOUことで、これをフィルタリングする方法はありません場合は
$user = gwmi Win32_UserAccount -filter "name='somebody' AND domain='mydomain'"
次の作品のクエリの例です。
これは私がやることを約午前何で、たDirectorySearcherからOUでユーザーのリストを取得し、それらはWin32_UserAccount(Win32_Accountから追加のプロパティを継承)を使用し、そこから残りの情報を取得します。 WMIのシンプルで単一の呼び出しで結果をループすることになりましたが、OUプロパティが利用できない場合は、それをフィルタリングできないと思います。 – Bratch