c#验证密码强度及有效性(可防sql注入)
使用正则表达式的方式,验证密码强度,以及有效性,有效性值的是不能包含可以字符,可防治sql注入
代码如下:
/// <summary>
/// 验证是否为有效密码
/// </summary>
/// <param name="password"></param>
/// <returns></returns>
public static bool IsValidPassword(string password)
{
try
{
return Regex.IsMatch(password,
@"[-\da-zA-Z`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]*(" +
@"(\d++[-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+)" +
@"|(\d+[-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]++)" +
@"|(+\d+[-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+)" +
@"|(+[-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+\d+)" +
@"|([-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+\d++)" +
@"|([-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]++\d+))" +
@"[-\da-zA-Z`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]*",
RegexOptions.IgnoreCase, TimeSpan.FromMilliseconds(250));
}
catch (RegexMatchTimeoutException)
{
return false;
}
}
楼主所有共享的代码好处就是,全部可以直接拿去,直接调用,不需要改任何东西。
这个和密码格式有没有关联 sherlockhomles 发表于 2014-7-15 01:16
这个和密码格式有没有关联
有 你确定有4个参数?:lol server 发表于 2014-9-22 06:04
你确定有4个参数?
什么4个参数 ibcadmin 发表于 2014-9-22 15:18
什么4个参数
Regex.IsMatch();
TimeSpan.FromMilliseconds(250)这个参数用不上吧 server 发表于 2014-9-22 07:30
Regex.IsMatch();
TimeSpan.FromMilliseconds(250)这个参数用不上吧
可以去掉 不过不影响
页:
[1]