Я храню данные пользователя, такие как имя, пароль и адрес электронной почты, в вашем HttpSession
с setAttribute
.Безопасно хранить критические данные в HttpSession?
Я хочу знать, можно ли хранить важные данные в HttpSession
.
Я храню данные пользователя, такие как имя, пароль и адрес электронной почты, в вашем HttpSession
с setAttribute
.Безопасно хранить критические данные в HttpSession?
Я хочу знать, можно ли хранить важные данные в HttpSession
.
Попробуйте хранить регистрационную информацию в одном из следующих хранилищ пользователей (проверки достоверности при входе в):
Это еще не полный список вариантов проверки подлинности.
Вы должны хотя бы использовать SSL/HTTPS для входа и любых других конфиденциальных данных.
Посмотрите на эту статью: http://en.wikipedia.org/wiki/Session_hijacking
А вот хороший SO обсуждение по этому вопросу: What is the best way to prevent session hijacking?
Некоторые вопросы безопасности также упоминается здесь: What should every programmer know about web development?
, но данные, хранящиеся в сеансе, никогда не выйдут из сервера, верно? – mulax
@mulax См. Редактирование. –
Идеальная практика должна НИКОГДА сохранять пароли любыми средствами приложения. В идеале пароли необходимо сохранять зашифрованными в таблице пользователей БД, если вы используете аутентификацию на основе db или используете аутентификацию LDAP.
После успешной аутентификации вы можете хранить такие поля, как электронная почта и имя, в сеансе http. Лучше всего, чтобы имя пользователя сохранялось (которое уникально) в информации о сеансе и профиле, должно быть прочитано из базы данных на основе этого имени пользователя, выполнив чтение базы данных. может хранить эту информацию в файле cookie, чтобы облегчить повторное заполнение частых посетителей некоторой информацией.
Самое главное - НЕ сохранять пароли в скрытых переменных, куки или строки запроса во ВСЕХ.
любая конфиденциальная информация, которая ДОЛЖНА быть сохранена, должна находиться в СЕССИИ, но зашифрована.
Зачем вам нужно хранить пароль в объекте HttpSession? – systempuntoout
Нет никакой приемлемой причины для хранения простого пароля ** в любом месте **, будь то сеанс, файл cookie, база данных, кеш (кроме одного процессора: p) или что-то еще, что является не только короткоживущей переменной , – ThiefMaster
У меня нет причин действительно сохранять пароль, но для хранения других пользовательских данных для быстрого доступа из jsp и el-expresion. но также может сохранять данные пользователя в компоненте. – mulax