C # или предложение VB.NET приветствуется.
У меня есть компьютеры, присоединенные к домену.Я пишу настольное приложение, которое запрашивает имя пользователя и пароль для аутентификации пользователя в Active Directory.Иногда пользователь использует это приложение на компьютере, который не присоединен к домену.
Я использую .NET 3.5, System.DirectoryServices и System.DirectoryServices.AccountManagement.Пример кода для аутентификации пользователей:
Private Function ValidateExternalUser(ByVal username As String, ByVal password As String) As Boolean
Using context As PrincipalContext = New PrincipalContext(ContextType.Domain, "your_domain_here")
Return context.ValidateCredentials(username, password, ContextOptions.Negotiate)
End Using
End Function
' from /4097/autentifikatsiya-polzovatelei-domena-s-pomoschy-system-directoryservices
Я хочу знать, как проверить, выполнил ли пользователь вход в систему на компьютере домена, и мне не нужно просить его снова войти в приложение.
Обновление
Если это невозможно сделать с помощью System.DirectoryServices.AccountManagemen, есть ли способ сделать это?Спасибо