Share via


ActiveDirectoryMembershipProvider.ValidateUser(String, String) Methode

Definition

Überprüft, ob der angegebene Benutzername und das angegebene Kennwort im Active Directory-Datenspeicher vorhanden sind.

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

Parameter

username
String

Der Name des zu überprüfenden Benutzers.

password
String

Das Kennwort für den angegebenen Benutzer.

Gibt zurück

true, wenn der angegebene username und das angegebene password gültig sind, andernfalls false. Wenn der angegebene Benutzer in der Active Directory-Datenquelle nicht vorhanden ist, gibt die ValidateUser(String, String)-Methode false zurück.

Ausnahmen

Die ValidateUser(String, String)-Methode wird aufgerufen, bevor die ActiveDirectoryMembershipProvider-Instanz initialisiert wird.

Hinweise

Diese Methode wird von der Membership -Klasse aufgerufen, um Benutzeranmeldeinformationen für den Active Directory-Datenspeicher zu überprüfen.

Wenn die EnablePasswordReset -Eigenschaft lautet true und die angegebenen Anmeldeinformationen gültig sind, werden die Nachverfolgungsindikatoren des Benutzers für Antworten auf ungültige Kennwörter zurückgesetzt.

Die ValidateUser Methode kann unter folgenden Umständen zurückgegeben false werden, wenn die richtigen Anmeldeinformationen angegeben werden:

  1. Das Benutzerkonto wurde vom Verzeichnisserver aufgrund zu vieler fehlgeschlagener Anmeldeversuche gesperrt. Der Benutzer kann sich erst anmelden, wenn die Sperrdauer des Verzeichnisses verstreicht.

  2. Wenn die EnablePasswordReset -Eigenschaft lautet true, wird das Benutzerkonto gesperrt, wenn der Benutzer zu oft eine Antwort mit einem fehlerhaften Kennwort angegeben hat. Das Konto des Benutzers wird entsperrt, nachdem die in der PasswordAnswerAttemptLockoutDuration -Eigenschaft angegebene Zeit abgelaufen ist.

  3. Der Benutzer muss in dem container vorhanden sein, der in der Verbindungszeichenfolge angegeben ist. Gültige Anmeldeinformationen werden für ein Benutzerkonto in einem anderen Container oder in einer anderen Domäne angegeben. Der Benutzer muss in dem container vorhanden sein, der in der Verbindungszeichenfolge angegeben ist.

Beim Überprüfen eines Benutzers überprüft der Anbieter die Anmeldeinformationen, indem er eine Verbindung mit dem Active Directory-Datenspeicher herstellt, indem er den angegebenen Benutzernamen und das angegebene Kennwort verwendet, nicht die in der Anwendungskonfigurationsdatei konfigurierten Anmeldeinformationen.

Die Instanz stellt jedoch ActiveDirectoryMembershipProvider unter Verwendung der konfigurierten Anmeldeinformationen aus den folgenden Gründen eine Verbindung mit dem Verzeichnis her.

  • Um zu bestätigen, dass ein Benutzer innerhalb des Suchbereichs vorhanden ist, der durch die Verbindungszeichenfolge der ActiveDirectoryMembershipProvider Instanz bestimmt wird. Der Anbieter verwendet eine Unterstruktursuche ab dem in der Verbindungszeichenfolge angegebenen Suchpunkt, um zu bestimmen, ob ein Benutzer vorhanden ist. Der Benutzer muss im angegebenen Container vorhanden sein. Anmeldeinformationen, die außerhalb des angegebenen Containers der Verbindungszeichenfolge gültig sind, werden nicht überprüft. Weitere Informationen zu Verbindungszeichenfolgen finden Sie im ActiveDirectoryMembershipProvider Klassenthema.

  • Wenn die EnablePasswordReset -Eigenschaft lautet true, verwendet die ActiveDirectoryMembershipProvider -Instanz die konfigurierten Anmeldeinformationen, um die Benutzerinstanz zu laden, um zu überprüfen, ob der Benutzer gesperrt wurde, da er zu viele fehlgeschlagene Versuche unternommen hat, die Kennwortantwort zu ändern.

Wichtig

Eine Verbindung mit einem Active Directory-Domänencontroller mit aktiviertem Gastkonto stellt eine potenzielle Sicherheitsbedrohung dar. Alle Überprüfungsversuche, die auf einem Active Directory-Domänencontroller mit aktiviertem Konto "Gast" durchgeführt werden, sind erfolgreich. Um die Sicherheit bei Verwendung eines Active Directory-Domänencontrollers zu verbessern, sollten Sie das Konto "Gast" auf dem Domänencontroller deaktivieren.

Die ActiveDirectoryMembershipProvider Instanz versucht eine gleichzeitige Bindung für Active Directory, wenn eine der folgenden Bedingungen erfüllt ist:

Darüber hinaus müssen für eine gleichzeitige Bindung die folgenden Bedingungen erfüllt sein:

  • Der Verzeichnisserver muss unter Windows Server 2003 ausgeführt werden.

  • Das Betriebssystem des Webservers, auf dem die ActiveDirectoryMembershipProvider Instanz ausgeführt wird, muss gleichzeitige Bindungen unterstützen (z. B. Windows Server 2003).

Wenn eine gleichzeitige Bindung verwendet wird, wird das letzte Anmeldedatum für den Benutzer im Verzeichnis nicht aktualisiert. daher kann nicht auf die LastLoginDate Eigenschaft verlass werden.

Führende und nachfolgende Leerzeichen werden auf den username Parameter gekürzt.

Gilt für:

Weitere Informationen