Использование SimpleMembership вы бы получить доступ к этой информации с помощью следующего метода:
WebSecurity.IsAccountLockedOut(userName, allowedPasswordAttempts, intervalInSeconds)
IsAccountLockedOut возвращает, заблокирована ли учетная запись или нет, на основе количества попыток, которые вы хотите разрешить, и времени, прошедшего с момента последней неудачной попытки входа в систему. Это используется, чтобы остановить попытки грубой силы взломать пароль другими машинами. Вы добавили бы эту проверку, где вы аутентифицируете пользователя, например, метод Login Accounters Account. Вы могли бы сделать что-то вроде этого:
[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public ActionResult Login(LoginModel model, string returnUrl)
{
if (ModelState.IsValid &&
!WebSecurity.IsAccountLockedOut(model.UserName, 3, 180) &&
WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe))
{
return RedirectToLocal(returnUrl);
}
// If we got this far, something failed, redisplay form
ModelState.AddModelError("", "The user name or password provided is incorrect.");
return View(model);
}
Вы не хотите, чтобы полностью отключить пользователь в этом случае и позволить действительному пользователю, чтобы получить обратно после интервала прошел. Это, чтобы остановить атаки грубой силы, а не люди, которые забыли свой пароль.
Поле IsConfirmed Поле используется во время регистрации, и вы хотите, чтобы пользователь подтвердил, что он предоставил вам действительный адрес электронной почты. Вы должны сгенерировать и сохранить ConfirmationToken в базе данных, которую вы должны отправить по электронной почте пользователю, и попросить их щелкнуть ссылку, которая приведет их к контроллеру/действию в вашем приложении MVC, которое проверит токен и установит IsConfirmed Поле к истине.
это вполне нормально .. но в моих целях, я хочу, чтобы отключить укомплектовать пользователь и, если я правильно понял, IsAccountLockedOut проверяет только на промежуток времени .. не лучше ли установить поле IsConfirmed на false? – Davide
См. Мой обновленный ответ, в котором объясняется, как использовать IsAccountLockedOut и для чего используется IsConfirmed. –
Очистить, большое спасибо :) – Davide