Я пытаюсь выполнить некоторые основные задачи по управлению пользователями AD в C #, используя .Net 3.5
У меня есть объект System.DirectoryServices.AccountManagement.UserPrincipal, который содержит сведения о пользователе.
Я могу позвонить user.ExpirePasswordNow()
, и пользователь будет вынужден изменить свой пароль при следующем входе в систему (а в графическом интерфейсе «Пользователи и компьютеры Active Directory» установлен флажок «Пользователь должен изменить пароль при следующем входе в систему»).
Однако я хочу проверить состояние этого свойства и воздействовать на него - я не хочу просто всегда устанавливать его в true с помощью функции ExpirePasswordNow()
. Как я могу это сделать?
Я нашел примеры, указывающие на то, что я обращаюсь к базовому DirectoryEntry и его pwdLastSet
свойствам - но это выглядит как непроницаемая система. Тип ComObject - это, вероятно, IADsLargeInteger, но я не могу привести к этому типу из-за его "уровня защиты" .
Я в растерянности - кто-нибудь может помочь?