我正在使用WindowsForms和C#。我的项目的交易是我需要为每个用户设置一个密码(目前有4个用户),这个密码在一个月内到期,之后他们需要生成一个新的随机密码。 随机密码的一部分我已经拥有它,但我无法使到期时间起作用。 我一直在使用DateTime类,但我无法使它工作。 我尝试制作一个if条件,如下例所示:
if(DateTime.Now < DateTime.Now.AddSeconds(-10))
{
//Message box that tells you that the password has expired
}
else
{
//Random password generator code
}
我也尝试将秒与变量i define进行比较,例如:
int Time = DateTime.Now.Seconds;
int Time2 = 10;
if(Time2 > Time)
{
//Message box that tells you that the password has expired
}
else
{
//Random password generator code
}
我也使用sql作为数据库,我有一个表用户,我存储了用户名和密码。但我还没有尝试访问主题,因为我想首先获得过期密码的代码。 此外,我一直在调查我的问题,我只找到了一些Active Directory,但我不认为这解决了我的问题。 我能解决这个问题吗?
答案 0 :(得分:2)
您无法自动使密码过期。这个答案最常见的解决方案是在您保存用户名和密码的表格上保留密码到期日期。
在登录过程中,检查有效登录,如果成功,则检查密码是否到期。如果密码已过期,请重定向以更改密码页而不是主表单。并且随着密码的更新,请不要忘记更新新的到期日期。