我在c# 2008
中有一个网络应用程序。
我被分配了一个任务来为此网站设置密码策略。
政策是
我无法弄清楚这一点。提前谢谢。
答案 0 :(得分:1)
如果您想“正确”并且正确,请转到正则表达式。如果您对此没有任何经验,请在紧急情况下忘记它。
相反,快速而肮脏的方式。这是未经测试的伪代码:
if (password.Length == 8)
{
check password[0] for upper case
check password[1] for lower case
check password[2] for special char
check password[3] && password[7] for "random digits"
//return false, throw error, whatever you want in the case of any failures.
}
else
{
return error "your password is too short"
}
不确定要使密码在6个月内过期。如果您将密码视为具有“到期日期”字段的自定义类,并且您只想在6个月后使用,则只需使用MyPassword.ExpirationDate = DateTime.Now.AddMonths(6);
答案 1 :(得分:0)
在没有尝试任何事情的情况下在这里问问它并不是一个好习惯。听起来你正试图让别人完成你的工作。我可以建议你应该做的方式,而不是提供代码。
您可以使用正则表达式来完成此操作。你可以搜索它。有许多资源。您应该构建一个正则表达式,它将检查除密码到期之外的所需约束。您应该检查数据库的密码到期时间。您可以定义一个每隔午夜工作的作业,这将检查密码数据库并检测到期的密码。