- Если вы обновляете существующий сайт, у которого были проблемы с безопасностью, капча не может повредить. Если это новый сайт, общедоступный или для внутреннего использования? Вы всегда можете добавить это позже, если у вас возникнут проблемы. Если есть конфиденциальные материалы, вы получите больше пользы от применения надежных паролей от пользователей (хотя это может раздражать их), чем от капчи (также раздражающей).
- Несколько вариантов здесь. Вы можете записывать IP-адрес при каждой попытке входа в систему и записывать неудачные попытки. 3-й сбой с того же IP в течение 15 минут блокирует дальнейшие попытки (каждая попытка завершается неудачей с заблокированным сообщением учетной записи). Дополнительные попытки сброса 15-минутного «таймера». Действительно, таймера нет, но при каждой попытке входа в систему он проверял журнал, чтобы узнать, не заблокирован ли он в течение последних 15 минут.
Журнал попыток входа в систему может храниться разными способами - часто в таблице базы данных. Может быть полезно хранить записи о каждом входе в систему (если является нарушением), или, возможно, вам нужны только неудачные входы. При желании вы можете удалить неудачные входы в систему из журнала, когда пользователь успешно вошел в систему. У вас может быть подпрограмма базы данных, которая время от времени очищает таблицу неудачных записей входа в систему, которые превысили период ожидания (15 минут или что-то еще).
Очевидно, что 15 минут являются произвольными - это может быть 1 минута или 24 часа или до тех пор, пока пользователь не вызовет вашу линию поддержки клиентов, чтобы восстановить ее.