ActiveDirectoryMembershipProvider.ResetPassword(String, String) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Resetuje heslo uživatele na nové, automaticky vygenerované heslo.
public:
override System::String ^ ResetPassword(System::String ^ username, System::String ^ passwordAnswer);
public override string ResetPassword (string username, string passwordAnswer);
override this.ResetPassword : string * string -> string
Public Overrides Function ResetPassword (username As String, passwordAnswer As String) As String
Parametry
- username
- String
Uživatel, pro který chcete resetovat heslo.
- passwordAnswer
- String
Odpověď hesla pro zadaného uživatele.
Návraty
Nové heslo pro zadaného uživatele.
Výjimky
Metoda ResetPassword(String, String) je volána před ActiveDirectoryMembershipProvider inicializaci instance.
Hodnota EnablePasswordReset vlastnosti je false
.
passwordAnswer
je po oříznutí prázdné.
-nebo-
passwordAnswer
delší než 128 znaků.
-nebo-
username
je prázdné nebo překračuje maximální povolenou délku uživatelských jmen (obvykle 256 znaků).
-nebo-
username
obsahuje čárky.
-nebo-
Uživatelské jméno je namapované na userPrincipalName
, ale username
parametr obsahuje zpětná lomítka.
Uživatel je uzamčen kvůli příliš mnoha neúspěšným pokusům o přihlášení nebo příliš mnoha pokusům o resetování hesla.
-nebo-
passwordAnswer
neodpovídá uložené odpovědi hesla.
Uživatel zadaný v username
nástroji neexistuje v úložišti dat služby Active Directory.
-nebo-
Vygenerované heslo nepředá vlastní obslužnou rutinu ověřování.
-nebo-
Vygenerované heslo není dostatečně složité, aby vyhovovalo vlastním zásadám hesel nastaveným na serveru služby Active Directory.
-nebo-
Pokud chcete nastavit nové heslo, nelze vytvořit zabezpečené připojení k serveru režimu aplikace služby Active Directory.
Došlo k neošetřené výjimce.
Poznámky
Metoda je volána Membership třídou k resetování hesla pro uživatele v úložišti dat služby Active Directory na novou náhodně vygenerovanou hodnotu. Vrátí se nové heslo.
Poznámka
Náhodné heslo vytvořené metodou ResetPassword nezaručuje předání regulárního výrazu PasswordStrengthRegularExpression ve vlastnosti . Náhodné heslo ale bude splňovat kritéria stanovená vlastnostmi MinRequiredPasswordLength a MinRequiredNonAlphanumericCharacters .
Pokud je na metodu ResetPassword zadána nesprávná odpověď, interní čítač, který sleduje neplatné pokusy o odpověď na heslo, se navýší o jednu. To může vést k tomu, že se uživatel nemůže přihlásit, dokud se stav zámku nesmaže voláním UnlockUser metody . Pokud je zadána správná odpověď na heslo a uživatel není aktuálně uzamčen, pak interní čítač, který sleduje neplatné pokusy o heslo, se resetuje na nulu. Pokud chcete získat další informace, podívejte se na vlastnosti MaxInvalidPasswordAttempts a PasswordAttemptWindow.
Ze všech hodnot parametrů se oříznou počáteční a koncové mezery.
Metodu ResetPassword můžete volat přímo tak, že nejprve získáte odkaz na ActiveDirectoryMembershipProvider instanci z Membership.Provider vlastnosti .
Zprostředkovatel používá vyhledávání v podstromu počínaje vyhledávacím bodem zadaným v připojovacím řetězci. Další informace o připojovacích řetězcích najdete v ActiveDirectoryMembershipProvider tématu třídy.
Pokud chcete nastavit hesla na serveru Služby Active Directory, connectionProtection
musí být atribut nastavený na SignAndSealhodnotu .
Při použití serveru ADAM lze atribut nastavit na None, ale pouze v případě, že server ADAM explicitně nakonfigurujete tak, connectionProtection
aby povoloval změny hesel přes nezabezpečená připojení.
Důležité
Hesla nelze resetovat, pokud přihlašovací údaje použité pro připojení k serveru služby Active Directory nemají buď oprávnění správce domény (nedoporučuje se), nebo přístupová práva resetování hesla.
Pokud chcete resetovat heslo, musí být splněné všechny následující podmínky:
Vlastnost musí být nastavená EnablePasswordReset na
true
hodnotu .Schéma služby Active Directory musí být změněno tak, aby obsahovalo atributy pro ukládání otázek a odpovědí na heslo, a změní se tři pole sledování pro odpověď na heslo.
Atributy
attributeMapPasswordQuestion
, ,attributeMapPasswordAnswer
,attributeMapFailedPasswordAnswerTime
attributeMapFailedPasswordAnswerCount
aattributeMapFailedPasswordAnswerLockedTime
musí být nastavené v konfiguračním souboru aplikace.Vlastnost musí být nastavená RequiresQuestionAndAnswer na
true
hodnotu .Kontext zabezpečení pro připojení k úložišti dat služby Active Directory (účet procesu nebo explicitní přihlašovací údaje) musí mít dostatečná oprávnění ke změně hesel. Přihlašovací údaje použité pro připojení k serveru služby Active Directory mají buď oprávnění správce domény (nedoporučuje se), nebo přístupové právo resetovat heslo.
Poznámka
Zásady zabezpečení nastavené na serveru služby Active Directory můžou metodě znemožnit ResetPassword vygenerování hesla, které splňuje zásady. Výchozí implementace GeneratePassword metody vygeneruje hesla, která splňují výchozí zásady hesel na řadičích domény se systémem Windows Server 2003 SP1. Pokud heslo nejde resetovat kvůli zásadám zabezpečení na serveru služby Active Directory, ProviderException vyvolá se chyba .