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;
}