共用方式為


ActiveDirectoryMembershipProvider.EnablePasswordReset 屬性

定義

取得值,指出是否設定 ActiveDirectoryMembershipProvider 執行個體允許使用者重設其密碼。

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

屬性值

如果允許重設密碼則為 true,否則為 false。 預設值為 false

例外狀況

在初始化 EnablePasswordReset 執行個體之前,已先嘗試存取 ActiveDirectoryMembershipProvider 屬性。

範例

下列程式代碼範例顯示設定實例以啟用密碼重設的 Web.config 專案 ActiveDirectoryMembershipProvider 。 它會使用指定「重設密碼」訪問許可權的使用者明確認證。

重要

當您在 Web.config 檔案中放置使用者認證時,會有潛在的安全性威脅。 具有包含 Web.config 檔案之目錄訪問許可權的使用者可以讀取檔案,因此會看到認證。 如需如何防範此威脅的詳細資訊,請參閱 使用受保護的組態加密組態資訊

<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>  

備註

屬性 EnablePasswordReset 會指出您是否可以使用 ResetPassword 方法來重設用戶的密碼。 屬性 EnablePasswordReset 是在應用程式的組態檔 enablePasswordReset 中使用 成員資格元素的 屬性設定, (ASP.NET Settings Schema) 元素。

只有在下列成員資格元素 (ASP.NET 設定架構) 元素設定時,才能設定 EnablePasswordReset 屬性true

  • requiresQuestionAndAnswer 必須是 true

  • Active Directory 架構必須修改為包含用來儲存密碼問題和答案的屬性,以及密碼回應變更嘗試的三個追蹤欄位。

  • attributeMapPasswordQuestionattributeMapPasswordAnswerattributeMapFailedPasswordAnswerCountattributeMapFailedPasswordAnswerTimeattributeMapFailedPasswordAnswerLockoutTime 必須對應至 Active Directory 架構中的屬性。

如果不符合上述準則,則會 ProviderException 在初始化時擲回 。

當應用程式組態檔中的連接字串指定 Active Directory 網域而非特定伺服器時,實例一律會連線到具有網域 PDC 角色的域控制器, ActiveDirectoryMembershipProvider 以確保密碼變更生效,並在呼叫 方法時 ValidateUser 可用。

注意

即使 EnablePasswordReset 屬性為 true,除非用來連線到 Active Directory 伺服器的認證具有 [網域系統管理員] 許可權,否則您無法重設使用者密碼 (不建議) 或「重設密碼」訪問許可權。

適用於

另請參閱