Я создаю систему входа в систему и хочу заблокировать человека, пытающегося войти в систему на несколько минут, когда указаны неправильные имя пользователя и пароль, так что скажем 4 раза.Ограниченные попытки входа в систему
Я знаю, как заблокировать его по IP, но это создаст блок, например. вся школа, если я там. Теперь я мог бы использовать имя пользователя, которое человек вводит для блокировки доступа, но это оставляет возможность того, что введенное имя пользователя не существует в базе данных.
Мой вопрос: Как создать этот блок для кого-то, кто вводит имя пользователя, которого не существует. И какие таблицы баз данных мне нужны для этого.
Также я искал возможность использовать сеанс и файлы cookie для него, но это оставляет проблему безопасности программного обеспечения, которое люди могут создавать, чтобы удалить сеансы и файлы cookie.
Так что если кто-нибудь может мне помочь, я был бы признателен.
Я бы сказал, пойдите для решения, которое на 99% действительно. Вы правы, блокировка по IP-адресу не очень хорошая идея, поскольку это может блокировать большие группы пользователей; плюс, если кто-то хочет, чтобы они могли обмануть свой IP-адрес. Блокировка по имени пользователя эффективна только в том случае, если кто-то пытается угадать пароль для определенных пользователей; сеансы/файлы cookie могут быть легко удалены конечными пользователями. Я предлагаю использовать комбинацию из нескольких методов: заблокировать имя пользователя после N неудачных попыток входа в систему, использовать сеансы в любой степени, которую пользователь может использовать и, возможно, заблокировать IP-адрес после большого количества попыток. –