MouseListener на JFrame

  1. хранят хеш соленого пароля, такого как bcrypt (nounce+pwd). Можно предпочесть bcrypt по SHA1 или MD5, потому что он может быть настроен для ЦП, поэтому делая атаку перебором путем дольше.
  2. добавляют капчу к форме входа в систему после нескольких ошибок входа в систему (для предотвращения атак перебором)
  3. , если приложение имеет, "забыл мой пароль" ссылка, удостоверьтесь, что это не отправляет новый пароль по электронной почте, но вместо этого это должно отправить ссылку к (защищенной) странице, разрешающей пользователю определить новый пароль (возможно только после подтверждения некоторых персональных данных, таких как дата рождения пользователя, например). Кроме того, если Ваше приложение позволяет пользователю определять новый пароль, удостоверьтесь, что Вы требуете, чтобы пользователь подтвердил текущий пароль.
  4. и очевидно, защитите форму входа в систему (обычно с HTTPS) и сами серверы

С этими мерами, пароли Вашего пользователя будут довольно хорошо защищены от:

  1. => офлайновые атаки с подбором по словарю
  2. => живые атаки с подбором по словарю
  3. => атаки "отказ в обслуживании"
  4. => все виды нападений!
5
задан Savvas Dalkitsis 10 September 2009 в 22:41
поделиться

4 ответа

Вы можете получить все события и проверить, является ли их источник компонентом в JFrame.

См. Toolkit.addAWTEventListener

6
ответ дан 18 December 2019 в 11:59
поделиться

Есть невидимый компонент, который перекрывает весь графический интерфейс, «стеклянную панель». Вы можете прикрепить к этому своих слушателей. Пример:

JFrame frame = new JFrame();
Component glassPane = frame.getGlassPane();
glassPane.addMouseListener(myListener);

Если вы хотите, чтобы ваши перехваченные события передавались в базовые компоненты, вы можете повторно отправить их. Например:

public void mouseMoved(MouseEvent e) {
    redispatchMouseEvent(e, false);
}
5
ответ дан 18 December 2019 в 11:59
поделиться

Потому что содержимое (вероятно, JPanel) «затеняет» и поглощает события и не достигает JFrame.

Что вы можете сделать, так это добавить одного и того же слушателя для всех детей. Хотя должен быть способ получше.

2
ответ дан 18 December 2019 в 11:59
поделиться

Альтернативой AWTEventListener является отправка EventQueue . Это имеет то преимущество, что это могут делать апплеты и приложение WebStart.

2
ответ дан 18 December 2019 в 11:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: