Обратный поиск домашней папки служб терминалов с помощью служб каталогов - PullRequest
0 голосов
/ 20 мая 2011

Я ищу способ запроса свойства домашней папки служб терминалов пользовательских объектов в Active Directory. Моя цель - иметь возможность выполнять обратный поиск, находя пользователей, которые используют определенную домашнюю папку.

Обычно, чтобы выполнить поиск, я бы сделал что-то вроде этого:

using (var search = new DirectorySearcher())
{
    // Find a user based on their telephone number
    search.Filter = "(telephoneNumber=999)"; 
    search.PropertiesToLoad.Add("displayName");
    var result = search.FindOne();
    if(result != null) {....}
}

Но настройки служб терминалов, по-видимому, не имеют ссылочного имени атрибута LDAP - в прошлом устанавливали эти значения Мне приходилось использовать интерфейс IADsTSUserEx с существующим DirectoryEntry для манипулирования TS свойства профиля и домашней папки. Однако это полезно только тогда, когда у меня есть учетная запись пользователя - не очень практично проходить через каждого пользователя в домене и создавать для него объект DirectoryEntry, просто чтобы проверить путь его профиля TS.

Есть ли практический способ выполнить запрос "WHERE User.TerminalServicesProfilePath = X" в .NET?

1 Ответ

1 голос
/ 22 мая 2011

Никто здесь, поэтому я пытаюсь объяснить.

В Windows Server 2008 (и R2) интерфейс среды выполнения сервера терминалов служб терминалов получает пользовательские параметры из пользовательского атрибута Active-Directory, который называется userParameters. Как объясняется в документации Microsoft userParameter содержит Параметр сервера терминалов в виде blob .

enter image description here

...