1. 程式人生 > WINDOWS開發 >C# web程式js 與 後臺密碼強弱驗證

C# web程式js 與 後臺密碼強弱驗證

1、js端驗證

function checkPass(s) {
    if (s.length < 8) {
        return 0;
    }
    var ls = 0;
    if (s.match(/([a-z])+/)) {
        ls++;
    }
    if (s.match(/([0-9])+/)) {
        ls++;
    }
    if (s.match(/([A-Z])+/)) {
        ls++;
    }
    if (s.match(/[^a-zA-Z0-9]+/)) {
        ls++;
    }
    
return ls }

2、後臺驗證

public class CheckPass
    {
        /// <summary>
        /// 密碼強度
        /// </summary>
        public enum Strength
        {
            Invalid = 0,//無效密碼
            Weak = 1,//低強度密碼
            Normal = 2,//中強度密碼
            Strong = 3 //高強度密碼
        };
        /// <summary>
/// 計算密碼強度 /// </summary> /// <param name="password">密碼字串</param> /// <returns></returns> public static Strength PasswordStrength(string password) { //空字串強度值為0 if (password == "") return Strength.Invalid;
//字元統計 int iNum = 0,iLtt = 0,iSym = 0; foreach (char c in password) { if (c >= 0 && c <= 9) iNum++; else if (c >= a && c <= z) iLtt++; else if (c >= A && c <= Z) iLtt++; else iSym++; } if (iLtt == 0 && iSym == 0) return Strength.Weak; //純數字密碼 if (iNum == 0 && iLtt == 0) return Strength.Weak; //純符號密碼 if (iNum == 0 && iSym == 0) return Strength.Weak; //純字母密碼 if (password.Length < 8) return Strength.Weak; //長度小於8的密碼 if (iLtt == 0) return Strength.Normal; //數字和符號構成的密碼 if (iSym == 0) return Strength.Normal; //數字和字母構成的密碼 if (iNum == 0) return Strength.Normal; //字母和符號構成的密碼 return Strength.Strong; //由數字、字母、符號構成的密碼 } }

3、使用方法

if (checkPass(mcp_txtPasswordField.getValue()) < 3) {
    toastalert(密碼必須是字母大寫、字母小寫、數字、特殊字元中任意三個組合,且長度大於8位!);
    return false;
}
if (CheckPass.PasswordStrength(this.txtPassword.Value)!=Strength.Strong)
{
    this.Response.Redirect("/manager/ChangePwd.aspx");
    return;
}

4、第一次跳轉時修改密碼介面一般是單獨介面,判斷是否在iframe中方法

1.方式一

if (self.frameElement && self.frameElement.tagName == "IFRAME") {
  alert(‘在iframe中‘);
}

2.方式二
if (window.frames.length != parent.frames.length) {
  alert(‘在iframe中‘);
}

3.方式三
if (self != top) { 
  alert(‘在iframe中‘);
}

以上程式碼片段來自網友:

https://www.cnblogs.com/zycbloger/p/6196493.html

https://download.csdn.net/download/ice9696/5380033

https://www.iteye.com/blog/zhanggz-188299