Поделиться через


ActiveDirectoryMembershipProvider.ValidateUser(String, String) Метод

Определение

Проверяет существование указанного имени пользователя и пароля в хранилище данных Active Directory.

public:
 override bool ValidateUser(System::String ^ username, System::String ^ password);
public override bool ValidateUser (string username, string password);
override this.ValidateUser : string * string -> bool
Public Overrides Function ValidateUser (username As String, password As String) As Boolean

Параметры

username
String

Имя пользователя для проверки.

password
String

Пароль заданного пользователя.

Возвращаемое значение

Значение true, если указанные username и password действительны; в противном случае — false. Если указанный пользователь не существует в хранилище данных Active Directory, метод ValidateUser(String, String) возвращает false.

Исключения

Метод ValidateUser(String, String) вызывается до инициализации экземпляра ActiveDirectoryMembershipProvider.

Комментарии

Этот метод вызывается классом для Membership проверки учетных данных пользователя в хранилище данных Active Directory.

EnablePasswordReset Если свойство имеет значение true и предоставленные учетные данные действительны, счетчики отслеживания пользователей для неверных ответов паролей сбрасываются.

Метод ValidateUser может возвращать false при указании правильных учетных данных в следующих случаях:

  1. Учетная запись пользователя была заблокирована сервером каталогов из-за слишком большого количества неудачных попыток входа. Пользователь не сможет войти в систему до тех пор, пока не пройдет продолжительность блокировки каталога.

  2. EnablePasswordReset Если свойство имеет значение true, учетная запись пользователя будет заблокирована, если пользователь слишком много раз предоставил неправильный ответ пароля. Учетная запись пользователя разблокируется по истечении времени, указанного в свойстве PasswordAnswerAttemptLockoutDuration .

  3. Пользователь должен существовать в контейнере, указанном в строке подключения. Для учетной записи пользователя, расположенной в другом контейнере или в другом домене, предоставляются допустимые учетные данные. Пользователь должен существовать в контейнере, указанном в строке подключения.

При проверке пользователя поставщик проверяет учетные данные, подключаясь к хранилищу данных Active Directory, используя указанные имя пользователя и пароль, а не учетные данные, настроенные в файле конфигурации приложения.

ActiveDirectoryMembershipProvider Однако экземпляр будет подключаться к каталогу, используя настроенные учетные данные по следующим причинам.

  • Чтобы убедиться, что пользователь существует в области поиска, определяемой строкой ActiveDirectoryMembershipProvider подключения экземпляра. Поставщик использует поиск по поддереву, начиная с точки поиска, указанной в строке подключения, чтобы определить, существует ли пользователь. Пользователь должен существовать в указанном контейнере. Учетные данные, действительные вне указанного контейнера строки подключения, не будут проверяться. ActiveDirectoryMembershipProvider Дополнительные сведения о строках подключения см. в разделе о классах.

  • EnablePasswordReset Если свойство имеет значение true, ActiveDirectoryMembershipProvider экземпляр будет использовать настроенные учетные данные для загрузки пользовательского экземпляра, чтобы проверить, заблокирован ли пользователь из-за слишком большого количества неудачных попыток изменить ответ на пароль.

Важно!

Подключение к контроллеру домена Active Directory с включенной гостевой учетной записью является потенциальной угрозой безопасности. Все попытки проверки контроллера домена Active Directory с включенной гостевой учетной записью будут успешными. Чтобы повысить безопасность при использовании контроллера домена Active Directory, следует отключить учетную запись guest на контроллере домена.

Экземпляр ActiveDirectoryMembershipProvider попытается выполнить параллельную привязку к Active Directory при выполнении одного из следующих условий:

Кроме того, для выполнения параллельной привязки должны выполняться следующие условия:

  • Сервер каталогов должен работать в Windows Server 2003.

  • Операционная система веб-сервера, на котором выполняется ActiveDirectoryMembershipProvider экземпляр , должна поддерживать параллельные привязки (например, Windows Server 2003).

При использовании параллельной привязки дата последнего входа пользователя не обновляется в каталоге; таким образом LastLoginDate , нельзя полагаться на свойство .

Начальные и конечные пробелы обрезаются из username параметра .

Применяется к

См. также раздел