iT邦幫忙

DAY 11
3

ASP.NET技巧系列 第 14

修改ASP.NET內建驗證機制的密碼規則

修改ASP.NET內建驗證機制的密碼規則,其中預設的密碼必須要英數混合,並且需要一個非英數的特別符號,而且至少要有7位。這樣的密碼才能吃得進去,當然這樣的機制是為了要增加密碼的安全性,避免別人用機器人程式來猜出您的密碼。不過如果內部的系統想要簡單一些,其實也可以透過設定Web.Config的方式來改變他的規則。

預設,在Machine.Config中,有這樣的一段設定

<membership>
    <providers>
        <add name="AspNetSqlMembershipProvider"
            type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
            connectionStringName="LocalSqlServer"
            enablePasswordRetrieval="false"
            enablePasswordReset="true"
            requiresQuestionAndAnswer="true"
            applicationName="/"
            requiresUniqueEmail="false"
            passwordFormat="Hashed"
            maxInvalidPasswordAttempts="5"
            minRequiredPasswordLength="7"
            minRequiredNonalphanumericCharacters="1"
            passwordAttemptWindow="10"
            passwordStrengthRegularExpression="" />
    </providers>
</membership>

其中的這些屬性,參考以下的內容(或者參考MSDN的說明)

如果有需要將該機器上的所有Web專案都修改,可以直接修改這個檔案。不過小喵建議,還是針對個別的來修改比較好。

如果要修改單一站台或者單一Web應用程式,那麼可以在該站台或者該Web應用程式的Web.Config中,加上自己的修改如下:

<membership>
    <providers>
            <remove name="AspNetSqlMembershipProvider" />
        <add name="AspNetSqlMembershipProvider"
            type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
            connectionStringName="LocalSqlServer"
            enablePasswordRetrieval="false"
            enablePasswordReset="true"
            requiresQuestionAndAnswer="true"
            applicationName="/"
            requiresUniqueEmail="false"
            passwordFormat="Hashed"
            maxInvalidPasswordAttempts="5"
            minRequiredPasswordLength="6"
            minRequiredNonalphanumericCharacters="0"
            passwordAttemptWindow="10"
            passwordStrengthRegularExpression="" />
    </providers>
</membership>

(假設要修改為最少6個字,不必輸入特殊字元,只需英數混合)

(請注意,一定要加上<remove name="AspNetSqlMembershipProvider" />,否則會有AspNetSqlMembershipProvider已經添加的錯誤訊息!!)


上一篇
GridView點選Row任何位置就選擇Part2
下一篇
挑選日期的好物 jQuery Plugin [dynDateTime]中文化特別處理
系列文
ASP.NET技巧17

尚未有邦友留言

立即登入留言