Я беспокоюсь, что после входа в систему с использованием метода Auth-> login() все данные, относящиеся к Пользователю, хранятся в сеансе, но НЕ являются паролем. Интересно, это нормально? и как я могу конкретно выбрать, какие поля я хочу хранить в сеансе при входе в систему.сеанс cakePHP не сохраняет пароль
ответ
Повторяя то, что я сказал в комментариях: Сохранение паролей в сеансах небезопасно, и не должно быть никаких причин для этого ,
Действительно, не делайте этого. Не.
Давайте войдем в мир фантазий. Если компонент Auth сохраняет пароль в сеансе, он имеет две возможности: сохранить его как открытый текст или сохранить его хэшированным и соленым.
Сценарий один:
Это будет то же самое, что написать свой пароль на лбу, взять себя в руки и опубликовать его на Facebook (или в новой социальной сети). Любой, кто видит ваш сеанс (это может быть сделано), будет иметь ваш пароль открытого текста. И если пользователь использует один и тот же пароль для всего ... yay free amazon shopping !!
Сценарий два:
это «безопаснее», не являясь открытым текстом. Но самое безопасное? Не давая никому хоть немного информации о пароле. Легче что-то расшифровать, если вы знаете конечный продукт. Значение по грубой силе, если я знаю простой пароль «12345», хэшируется и соленая и производит «i8g04», и у меня одно и то же для многих других пользователей, в конце концов я смогу вывести, какую соль вы использовали и как хэш его. «В конце концов», может быть, смысл вместо 2^58 - это попытка 2-57 грубой силой. Это намного меньше времени и обработки (1.4411519e + 17 согласно google). Итак ... нет, лучше не делать этого. И для чего вы (или торт) используете этот хэш-соленый пароль?
и как я могу конкретно выбрать, какие поля я хочу хранить в сессии при входе в
Я не знаю, как это сделать, есть только один дополнительный параметр в login
, так что нет варианты там ... вы могли бы расширить компонент Auth, чтобы добавить функциональность, если хотите ... Но если вы хотите сделать это для чего-то конкретного, возможно, вам будет лучше объяснять свои причины для нас, и мы могли бы дать вам советы о том, как это сделать.
PD: Повторяю, не храните пароли в сеансе.
Ну, я полностью понимаю вашу точку зрения, хотя ваша история очень ОЧЕНЬ маловероятна, поэтому мне нужно снова запросить БД, если я хочу обновить пароль – user3813360
- 1. Компьютер не сохраняет сеанс
- 2. TortoiseSVN не сохраняет пароль
- 3. cookie не сохраняет Cakephp
- 4. cakephp не сохраняет данные
- 5. CakePHP SaveMany не сохраняет
- 6. CakePHP saveMany не сохраняет
- 7. Сеанс Codeigniter не сохраняет данные
- 8. Eclipse не сохраняет пароль SVN
- 9. CakePHP Не сохраняет BelongsTo Key
- 10. CakePHP не сохраняет длинный текст
- 11. CakePHP 2.5 habtm не сохраняет
- 12. cakephp usermin пароль не сохраняется
- 13. Пароль CakePHP не получает hash
- 14. Yii 1.1 сеанс иногда не сохраняет значение
- 15. Раскрывающийся список не сохраняет данные на сеанс
- 16. Cakephp случайно выпадает сеанс
- 17. сеанс многоуровневой формы cakephp
- 18. CakePHP 3: Шифровать/дешифровать пароль
- 19. CakePHP: как зарегистрировать сеанс?
- 20. CakePHP - сеанс в консоли?
- 21. Spring: Security-context не сохраняет мой пароль
- 22. Silverstripe: ConfirmedPasswordField не сохраняет новый пароль
- 23. многопользовательский логин, не проверяющий пароль и сеанс
- 24. Сбросить пароль функции CakePHP
- 25. CakePHP 2.4 Забытый пароль
- 26. CakePHP BlowFish Сравнить Пароль
- 27. Пароль пользователя SVN сохраняет сбрасывание
- 28. SampleSyncAdapter сохраняет пароль обычного текста?
- 29. Cakephp 2.0 сменить пароль
- 30. Firefox сохраняет пароль, но chrome не сохраняет пароль для формы входа
Сохранение паролей в сеансах вообще небезопасно, и не должно быть никаких оснований для этого. – Nunser
Хорошо спасибо за ответ, вот что я думал, даже если он хэширован с SALT – user3813360