Я использую .NET 9, C# 13.0 и внешняя система пакетов NUGET.DirectoryServices . Когда я выполняю поиск с помощью DieforySearcher.findall () по всему домену, он возвращает результаты, но молча пропускает любые организационные единицы (OUS) или контейнеры, где у учетной записи не хватает достаточных разрешений.
Код: Выделить всё
using DirectoryEntry entry = new("LDAP://example.com:389/DC=example,DC=com", "username", "password");
using DirectorySearcher searcher = new(entry);
searcher.Filter = "(&(objectClass=user)(objectCategory=person))";
searcher.PageSize = 100;
searcher.CacheResults = true;
searcher.SearchScope = SearchScope.Subtree;
var results = searcher.FindAll();
Есть ли способ настроить DirectorySearcher (из System.DirectoryServices Nuget Package), чтобы бросить исключение или предоставить предупреждение, когда он столкнется с OU или контейнером, с которым он не может получить доступ? Или есть рекомендуемая шаблон для обнаружения этих сбоев доступа во время операции поиска?
Подробнее здесь:
https://stackoverflow.com/questions/797 ... -directory