2012-03-12 2 views
1

Я хотел бы иметь возможность использовать функциональные возможности, предоставляемые этими классами инфраструктуры, но также необходимо убедиться, что флаг аутентификации «ReadOnlyServer» установлен, поскольку мое приложение будет доступно только для чтения Среда контроллера домена.Доменные и лесные объекты в .NET

Эти объекты инфраструктуры внутренне создают свои собственные объекты DirectoryEntry, но не указывают правильный флаг. Кто-нибудь знает, как заставить .NET использовать разные флаги аутентификации?

В настоящий момент любой вызов Domain.GetCurrentDomain() или Forest.GetCurrentForest() будет зависать или разбивать мое приложение в среде RODC.

ответ

1

Я не знаю, как изменить встроенное поведение. Я предполагаю, что это решение было принято на основе классов, поддерживающих модификации и не желающих менять их, чтобы иметь возможность преследовать рефералов или что-то в этом роде. Я бы быстро посмотрел на support.microsoft.com и посмотрел, было ли исправление, которое могло бы изменить это поведение.

Возможно, вам придется обернуть API Win32, например, DsGetDcName и использовать этот вывод для построения контекста для перехода к Domain.GetDomain().

+0

Спасибо, что подтвердили это. Фактически нам удалось использовать IDsBrowseDomainTree, чтобы пользователь мог просматривать домены из нашего кода C#. Это предоставляет два метода BrowseTo и GetDomains. Мы можем в будущем переписать наш пользовательский диалог, чтобы использовать IDsBrowseDomainTree.GetDomains() для его заполнения. Таким образом, у нас все еще может быть красивый диалог. –