[C#] AD のオブジェクトを SID で検索する。
Active Directory のオブジェクトを DirectorySearcher を使って取り出す場合、SID (objectSid) を検索条件に指定するには以下のようにする。
複数の SID を指定する場合には若干書き方が変わる。
複数の SID を指定する場合には若干書き方が変わる。
var directoryPath = "TEST-SV/OU=Hoge,DC=Hoo,DC=local"; var userName = @"Hoo\Administrator"; var password = "hogehoge"; using (var searcher = new DirectorySearcher(CreateDirectoryEntry(directoryPath, userName, password))) { // 一つのみ指定する場合。 searcher.Filter = ("(objectSid=S-9-9-99-999999999-9999999999-9999999999-1000)"); // 複数指定する場合。 searcher.Filter = ("(|(objectSid=S-9-9-99-999999999-9999999999-9999999999-1000)(objectSid=S-9-9-99-999999999-9999999999-9999999999-1001))"); var result = searcher.FindAll(); return result; }