Membership.PasswordAttemptWindow 屬性

定義

取得時間範圍,在此時間範圍內會追蹤提供有效密碼或密碼解答的連續失敗嘗試。

public:
 static property int PasswordAttemptWindow { int get(); };
public static int PasswordAttemptWindow { get; }
static member PasswordAttemptWindow : int
Public Shared ReadOnly Property PasswordAttemptWindow As Integer

屬性值

時間範圍 (以分鐘為單位),在此時間範圍內會追蹤提供有效密碼或密碼解答的連續失敗嘗試。 預設值是 10 分鐘。 如果目前失敗嘗試與上一次失敗嘗試之間的時間間隔超過 PasswordAttemptWindow 屬性設定,則會將每次失敗嘗試都視為初次失敗嘗試。

範例

下列程式碼範例顯示 ASP.NET 應用程式之Web.config檔案區段中 的成員資格 專案 system.web 。 它會指定應用程式使用 的 SqlMembershipProvider 實例,並將 屬性設定 maxInvalidPasswordAttempts 為五個不正確嘗試,並將 設定 passwordAttemptWindow 為 30 分鐘。

<membership defaultProvider="SqlProvider"   
  userIsOnlineTimeWindow="20">  
  <providers>  
    <add name="SqlProvider"  
      type="System.Web.Security.SqlMembershipProvider"  
      connectionStringName="SqlServices"  
      requiresQuestionAndAnswer="true"  
      maxInvalidPasswordAttempts="5"  
      passwordAttemptWindow="30"  
      applicationName="MyApplication" />  
  </providers>  
</membership>  

備註

屬性 PasswordAttemptWindow 可與 屬性搭配 MaxInvalidPasswordAttempts 運作,以透過重複的嘗試,協助防止不想要的來源猜測成員資格使用者的密碼或密碼答案。 當使用者嘗試使用、變更或重設其密碼登入時,在指定的時間範圍內只允許特定數目的連續嘗試。 這個時間範圍的長度是在 屬性中 PasswordAttemptWindow 指定,可識別無效嘗試之間允許的分鐘數。

如果使用者嘗試重設密碼的連續失敗次數等於 屬性中所 MaxInvalidPasswordAttempts 儲存的值,且自上次無效嘗試以來經過的時間小於 屬性中指定的 PasswordAttemptWindow 分鐘數,則成員資格使用者會被鎖定。藉由將 屬性 true 設定 IsLockedOut 為 來鎖定使用者,直到呼叫 UnlockUser 方法的使用者解除鎖定為止。

如果目前失敗嘗試與上次失敗嘗試之間的間隔大於 PasswordAttemptWindow 屬性設定,則目前的無效嘗試會計算為第一個嘗試。 如果在達到允許的無效嘗試數目上限之前提供有效的密碼答案,則不正確密碼回應嘗試計數會設定為 0 (零) 。 如果在達到允許的無效嘗試數目上限之前提供有效的密碼,則密碼嘗試的計數和無效密碼回應嘗試的計數會設定為 0 (零) 。

不正確密碼和密碼答案嘗試會彼此獨立累積。 例如,如果 MaxInvalidPasswordAttempts 設定為 5,而三次不正確密碼嘗試後面接著兩次不正確密碼回應嘗試,則必須在 內進行兩次不正確密碼嘗試, (或三次不正確密碼答案嘗試,) 必須在 內 PasswordAttemptWindow 進行。

PasswordAttemptWindow屬性值是使用 passwordAttemptWindow成員資格組態專案區段的 屬性,在應用程式組態中設定。

RequiresQuestionAndAnswer如果 屬性設定為 false ,則不會追蹤不正確密碼回應嘗試。

適用於

另請參閱