Freigeben über


ActiveDirectoryMembershipProvider.EnablePasswordReset Eigenschaft

Definition

Ruft einen Wert ab, der angibt, ob die ActiveDirectoryMembershipProvider-Instanz so konfiguriert ist, dass Benutzer ihre Kennwörter zurücksetzen können.

public:
 virtual property bool EnablePasswordReset { bool get(); };
public override bool EnablePasswordReset { get; }
member this.EnablePasswordReset : bool
Public Overrides ReadOnly Property EnablePasswordReset As Boolean

Eigenschaftswert

true, wenn das Zurücksetzen von Kennwörtern zulässig ist, andernfalls false. Der Standardwert ist false.

Ausnahmen

Vor Initialisierung der EnablePasswordReset-Instanz wurde versucht, auf die ActiveDirectoryMembershipProvider-Eigenschaft zuzugreifen.

Beispiele

Das folgende Codebeispiel zeigt einen Web.config Eintrag, der eine ActiveDirectoryMembershipProvider Instanz zum Aktivieren von Kennwortzurücksetzungen konfiguriert. Es verwendet die expliziten Anmeldeinformationen eines Benutzers, der das Zugriffsrecht "Kennwort zurücksetzen" erteilt hat.

Wichtig

Wenn Sie Benutzeranmeldeinformationen in Ihrer Web.config-Datei platzieren, gibt es potenzielle Sicherheitsbedrohungen. Benutzer mit Zugriffsrechten für das Verzeichnis, das die Web.config Datei enthält, können die Datei lesen und somit die Anmeldeinformationen anzeigen. Ausführliche Informationen zum Schutz vor dieser Bedrohung finden Sie unter Verschlüsseln von Konfigurationsinformationen mithilfe der geschützten Konfiguration.

<configuration>  
  <connectionStrings>  
    <add name="ADService" connectionString="LDAP://ldapServer/" />  
  </connectionStrings>  
  <system.web>  
    <membership defaultProvider="AspNetActiveDirectoryMembershipProvider">  
      <providers>  
        <add name="AspNetActiveDirectoryMembershipProvider"   
          type="System.Web.Security.ActiveDirectoryMembershipProvider,   
          System.Web, Version=2.0.3600, Culture=neutral,   
          PublicKeyToken=b03f5f7f11d50a3a"  
          connectionUsername="UserWithResetPasswordRights"  
          connectionPassword="PasswordForUser"  
          enablePasswordReset="true"  
          requiresQuestionAndAnswer="true"  
          attributeMapPasswordQuestion="PasswordQuestionADAttribute"  
          attributeMapPasswordAnswer="PasswordAnswerADAttribute"  
          attributeMapFailedPasswordAnswerCount="AnswerCountADAttribute"  
          attributeMapFailedPasswordAnswerTime="AnswerTimeADAttribute"  
          attributeMapFailedPasswordAnswerLockoutTime="LockOutTimeADAttribute" />  
      </providers>  
    </membership>  
  </system.web>  
</configuration>  

Hinweise

Die EnablePasswordReset -Eigenschaft gibt an, ob Sie die ResetPassword -Methode verwenden können, um das Kennwort eines Benutzers zurückzusetzen. Die EnablePasswordReset -Eigenschaft wird in der Konfigurationsdatei Ihrer Anwendung mithilfe des enablePasswordReset Attributs des elements membership (ASP.NET Settings Schema) festgelegt.

Sie können die EnablePasswordReset -Eigenschaft true nur festlegen, wenn die folgenden Elementeinstellungen für das Mitgliedschaftselement (ASP.NET Settings Schema) vorgenommen wurden.

  • requiresQuestionAndAnswer muss den Wert true haben.

  • Das Active Directory-Schema muss geändert werden, um Attribute zum Speichern der Kennwortfrage und -antwort sowie die drei Nachverfolgungsfelder für Kennwort-Antwort-Änderungsversuche zu enthalten.

  • attributeMapPasswordQuestion, attributeMapPasswordAnswer, attributeMapFailedPasswordAnswerCount, attributeMapFailedPasswordAnswerTimeund attributeMapFailedPasswordAnswerLockoutTime müssen Attributen im Active Directory-Schema zugeordnet werden.

Wenn die oben genannten Kriterien nicht erfüllt sind, wird bei der Initialisierung ein ProviderException ausgelöst.

Wenn die Verbindungszeichenfolge in der Anwendungskonfigurationsdatei anstelle eines bestimmten Servers eine Active Directory-Domäne angibt, stellt die ActiveDirectoryMembershipProvider Instanz immer eine Verbindung mit dem Domänencontroller her, der über die PDC-Rolle für die Domäne verfügt, um sicherzustellen, dass Kennwortänderungen wirksam werden und verfügbar sind, wenn die ValidateUser Methode aufgerufen wird.

Hinweis

Selbst wenn die EnablePasswordReset -Eigenschaft lautet true, können Sie Benutzerkennwörter nicht zurücksetzen, es sei denn, die Anmeldeinformationen, die zum Herstellen einer Verbindung mit dem Active Directory-Server verwendet werden, verfügen entweder über Domänenadministratorrechte (nicht empfohlen) oder das Zugriffsrecht "Kennwort zurücksetzen".

Gilt für:

Weitere Informationen