[C#] AD のオブジェクトを SID で検索する。

Active Directory のオブジェクトを DirectorySearcher を使って取り出す場合、SID (objectSid) を検索条件に指定するには以下のようにする。
複数の 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;
}

このブログの人気の投稿

コピーした行の挿入が表示されない時はフィルタされていないかチェック

Excel で一部の図形だけ固定する