ActiveDirectoryMembershipProvider.ValidateUser(String, String) Methode

Definitie

Controleert of de opgegeven gebruikersnaam en het opgegeven wachtwoord aanwezig zijn in het Active Directory gegevensarchief.

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

Parameters

username
String

De naam van de gebruiker die moet worden gevalideerd.

password
String

Het wachtwoord voor de opgegeven gebruiker.

Retouren

true indien de opgegeven username en password geldig zijn; falseanders. Als de opgegeven gebruiker niet bestaat in het Active Directory gegevensarchief, retourneert de methode ValidateUser(String, String)false.

Uitzonderingen

De ValidateUser(String, String) methode wordt aangeroepen voordat het ActiveDirectoryMembershipProvider exemplaar wordt geïnitialiseerd.

Opmerkingen

Deze methode wordt aangeroepen door de klasse Membership om gebruikersreferenties te valideren op basis van het Active Directory gegevensarchief.

Als de EnablePasswordReset eigenschap is true en de opgegeven referenties geldig zijn, worden de traceringsmeteritems van de gebruiker voor slechte wachtwoordantwoorden opnieuw ingesteld.

De ValidateUser methode kan worden geretourneerd false wanneer de juiste referenties worden opgegeven, onder de volgende omstandigheden:

  1. Het gebruikersaccount is vergrendeld door de adreslijstserver vanwege te veel mislukte aanmeldingspogingen. De gebruiker kan zich pas aanmelden nadat de vergrendelingsduur van de map is verstreken.

  2. Als de EnablePasswordReset eigenschap is true, wordt het gebruikersaccount vergrendeld als de gebruiker te vaak een slecht wachtwoord heeft opgegeven. Het gebruikersaccount wordt ontgrendeld nadat de tijd die is opgegeven in de PasswordAnswerAttemptLockoutDuration eigenschap is verstreken.

  3. De gebruiker moet bestaan in de container die is opgegeven in de verbindingsreeks. Geldige referenties worden opgegeven voor een gebruikersaccount in een andere container of in een ander domein. De gebruiker moet bestaan in de container die is opgegeven in de verbindingsreeks.

Bij het valideren van een gebruiker valideert de provider de referenties door verbinding te maken met het Active Directory gegevensarchief met behulp van de opgegeven gebruikersnaam en het opgegeven wachtwoord, niet de referenties die zijn geconfigureerd in het configuratiebestand van de toepassing.

Het ActiveDirectoryMembershipProvider exemplaar maakt echter om de volgende redenen verbinding met de map met behulp van de geconfigureerde referenties.

  • Om te bevestigen dat een gebruiker binnen het zoekbereik bestaat, zoals bepaald door de ActiveDirectoryMembershipProvider exemplaar van het verbindingsreeks. De provider gebruikt een substructuurzoekopdracht die begint bij het zoekpunt dat is opgegeven in de verbindingsreeks om te bepalen of er een gebruiker bestaat. De gebruiker moet bestaan in de opgegeven container. Referenties die geldig zijn buiten de opgegeven container van de verbindingsreeks worden niet gevalideerd. Zie het ActiveDirectoryMembershipProvider klasonderwerp voor meer informatie over verbindingsreeksen.

  • Als de EnablePasswordReset eigenschap is true, gebruikt het ActiveDirectoryMembershipProvider exemplaar de geconfigureerde referenties om het gebruikersexemplaren te laden om te controleren of de gebruiker is vergrendeld omdat er te veel mislukte pogingen zijn gedaan om het wachtwoordantwoord te wijzigen.

Important

Verbinding maken met een Active Directory-domeincontroller met het ingeschakelde gastaccount is een mogelijke beveiligingsrisico. Alle validatiepogingen die zijn uitgevoerd op een Active Directory domeincontroller waarvoor het ingeschakelde gastaccount is ingeschakeld, slaagt. Als u de beveiliging wilt verbeteren bij het gebruik van een Active Directory domeincontroller, moet u het account Gast uitschakelen op de domeincontroller.

De ActiveDirectoryMembershipProvider-instantie probeert een gelijktijdige binding uit te voeren op Active Directory wanneer aan een van de volgende voorwaarden wordt voldaan:

Bovendien moeten de volgende voorwaarden waar zijn om een gelijktijdige binding te maken:

  • De mapserver moet worden uitgevoerd op Windows Server 2003.

  • Het besturingssysteem van de webserver waarop het ActiveDirectoryMembershipProvider-exemplaar wordt uitgevoerd, moet gelijktijdige bindingen ondersteunen (bijvoorbeeld Windows Server 2003).

Wanneer een gelijktijdige binding wordt gebruikt, wordt de laatste aanmeldingsdatum voor de gebruiker niet bijgewerkt in de map; daarom kan de LastLoginDate eigenschap niet worden vertrouwd.

Voorloop- en volgspaties worden afgekapt van de username parameter.

Van toepassing op

Zie ook