ActiveDirectoryMembershipProvider.ValidateUser(String, String) Metoda

Definicja

Sprawdza, czy określona nazwa użytkownika i hasło istnieją w magazynie danych usługi 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

Parametry

username
String

Nazwa użytkownika do zweryfikowania.

password
String

Hasło dla określonego użytkownika.

Zwraca

truejeśli określona wartość username i password jest prawidłowa; w przeciwnym razie . false Jeśli określony użytkownik nie istnieje w magazynie danych usługi Active Directory, ValidateUser(String, String) metoda zwraca wartość false.

Wyjątki

Metoda jest wywoływana ValidateUser(String, String) przed zainicjowanym wystąpieniem ActiveDirectoryMembershipProvider .

Uwagi

Ta metoda jest wywoływana przez klasę w Membership celu zweryfikowania poświadczeń użytkownika względem magazynu danych usługi Active Directory.

EnablePasswordReset Jeśli właściwość jest true i podane poświadczenia są prawidłowe, liczniki śledzenia użytkownika pod kątem nieprawidłowych odpowiedzi na hasło są resetowane.

Metoda może zostać zwrócona ValidateUserfalse po podaniu poprawnych poświadczeń w następujących okolicznościach:

  1. Konto użytkownika zostało zablokowane przez serwer katalogu z powodu zbyt wielu nieudanych prób logowania. Użytkownik nie będzie mógł się zalogować, dopóki czas trwania blokady katalogu nie zostanie przekroczony.

  2. EnablePasswordReset Jeśli właściwość to true, konto użytkownika zostanie zablokowane, jeśli użytkownik dostarczył zbyt wiele złej odpowiedzi na hasło. Konto użytkownika zostanie odblokowane po upływie czasu określonego PasswordAnswerAttemptLockoutDuration w właściwości.

  3. Użytkownik musi istnieć w kontenerze określonym w parametrach połączenia. Prawidłowe poświadczenia są dostarczane dla konta użytkownika znajdującego się w innym kontenerze lub w innej domenie. Użytkownik musi istnieć w kontenerze określonym w parametrach połączenia.

Podczas sprawdzania poprawności użytkownika dostawca weryfikuje poświadczenia, łącząc się z magazynem danych usługi Active Directory przy użyciu określonej nazwy użytkownika i hasła, a nie poświadczeń skonfigurowanych w pliku konfiguracji aplikacji.

Jednak ActiveDirectoryMembershipProvider wystąpienie połączy się z katalogiem przy użyciu skonfigurowanych poświadczeń z następujących powodów.

  • Aby potwierdzić, że użytkownik istnieje w zakresie wyszukiwania określonym przez ActiveDirectoryMembershipProvider parametry połączenia wystąpienia. Dostawca używa wyszukiwania poddrzewa rozpoczynającego się od punktu wyszukiwania określonego w parametrach połączenia w celu określenia, czy użytkownik istnieje. Użytkownik musi istnieć w określonym kontenerze. Poświadczenia, które są prawidłowe poza określonym kontenerem parametrów połączenia, nie zostaną zweryfikowane. Zobacz temat klasy, ActiveDirectoryMembershipProvider aby uzyskać więcej informacji na temat parametrów połączenia.

  • EnablePasswordReset Jeśli właściwość to true, ActiveDirectoryMembershipProvider wystąpienie użyje skonfigurowanych poświadczeń, aby załadować wystąpienie użytkownika, aby sprawdzić, czy użytkownik został zablokowany, ponieważ dokonał zbyt wielu nieudanych prób zmiany odpowiedzi na hasło.

Ważne

Nawiązywanie połączenia z kontrolerem domeny usługi Active Directory z włączonym kontem "Gość" jest potencjalnym zagrożeniem bezpieczeństwa. Wszystkie próby weryfikacji wykonane na kontrolerze domeny usługi Active Directory z włączonym kontem "Gość" powiedzie się. Aby zwiększyć bezpieczeństwo podczas korzystania z kontrolera domeny usługi Active Directory, należy wyłączyć konto "Gość" na kontrolerze domeny.

Wystąpienie ActiveDirectoryMembershipProvider podejmie próbę współbieżnego powiązania z usługą Active Directory, gdy zostanie spełniony jeden z następujących warunków:

Ponadto w przypadku współbieżnego powiązania należy spełnić następujące warunki:

  • Serwer katalogów musi być uruchomiony w systemie Windows Server 2003.

  • System operacyjny serwera sieci Web z uruchomionym ActiveDirectoryMembershipProvider wystąpieniem musi obsługiwać współbieżne powiązania (na przykład Windows Server 2003).

Gdy jest używane powiązanie współbieżne, ostatnia data logowania użytkownika nie jest aktualizowana w katalogu; w związku z LastLoginDate tym nie można polegać na właściwości.

Spacje wiodące i końcowe są przycinane z parametru username .

Dotyczy

Zobacz też