Нуждаете се от това, което се нарича прозорец за опит за парола.
Основно 2 полета в базата данни, едно LastPasswordAttempt (datetime) и PasswordAttemptCount (int)
След това при всяко влизане проверете кога се е случил последния LastPasswordAttempt и дали е бил в последните да кажем 10 минути - увеличете PasswordAttemptCount, в противен случай го нулирайте на 0 (или 1, защото току-що са се провалили).
По същата логика проверете дали PasswordAttemptCount е равен да речем 5 или повече, ако е - откажете достъпа на потребителя. Може да имате 3-то поле, което да ги заключва за няколко часа или за ден.
т.е. CanLoginAfter(datetime), който можете да зададете на ден от последния опит за парола.
Надявам се това да помогне