我试图在n次尝试失败后锁定用户,这只有在用户有电子邮件ID且我使用用户名而不是电子邮件ID登录我的应用程序时才有效。在这种情况下是否有办法我可以在没有电子邮件ID的情况下锁定用户吗?
答案 0 :(得分:0)
您可以尝试在会话变量中保留失败计数器。您需要将会话状态添加到web.config以使用此代码。
在您的控制器中
public int getFailedAttempts()
{
int? failedAttempts = Session["FailedAttempts"] as int?;
if (failedAttempts != null)
{
return (int)failedAttempts;
}
else {
return 0;
}
}
public void handleFailedAttempt()
{
var failedAttempts = getFailedAttempts();
Session["FailedAttempts"] = failedAttempts + 1;
}
在web.config中
<system.web>
...
<sessionState mode="InProc" timeout="30" />
</system.web>