Как я могу реализовать неправильные попытки пароля 3 раза после того, как изображение capcha. Я использую сервлет / JSP.

Я собираюсь внедрить некоторые проверки безопасности в моем проекте.

Как я могу реализовать это - "неправильный пароль пытается максимум 3 раза после того, как появится это изображение капчи".

я использую Servlet/JSP,

3 ответа

По техническим требованиям

Для определения источника IP-адрес, к сожалению, не подходит. Следовательно, вам нужно использовать сеанс и даже подтвердить, что сеанс поддерживается на стороне клиента. То есть робот может просто не проводить сеанс, а затем никогда не достигнет капчи.

Так последовательно:

  • страница входа, установить сессию, (session.setAttribute("enterkey", Random.nextInt())) перенаправить к себе
  • страница входа, проверка сеанса, установка счетчика на 3, запрос пользователя и пароля, новое случайное число
  • проверить пользователя и пароль, пока счетчик не достигнет 0, короткое ожидание

При добавлении случайного числа один предотвращает запуск почти параллельных сообщений.

Я не могу дать вам полную реализацию здесь, поскольку это большая процедура. Тем не менее, ваша реализация будет идти так...

  1. создать страницу входа в систему JSP.
  2. перенаправить запрос на вход в сервлет (скажем, LoginServlet)
  3. при сбое входа в систему LoginServlet будет поддерживать счетчик в сеансе.
  4. когда счетчик достигает 3, он перенаправляет на страницу с изображением капчи.

Пожалуйста, помните, что реализация должна быть связана с именем пользователя. счетчик должен увеличиваться для каждого пользователя...

Вы можете использовать счетчик сеансов в своем сервлете входа, после трех неудач вы можете сохранить атрибут в сеансе. Атрибут читается в вашем JSP, который как раз в этом случае показывает изображение капчи.

Другие вопросы по тегам