Я создаю многошаговую съемку и хочу сохранить данные в $_SESSION
, прежде чем писать все в базу данных. Есть ли что-нибудь, что я должен делать с данными, прежде чем хранить их там с точки зрения безопасности?Сохранение данных POST на СЕССИИ
ответ
Предполагая, что вы находитесь на обычных сеансах, основанных на файлах, тогда вам не о чем беспокоиться в представлении уязвимости инъекции. PHP позаботится о механизме чтения/записи файла сеанса, используя serialize()
и тому подобное. Вещи, что бы вы ни пожелали в $ _SESSION, и это волшебство будет присутствовать при вызове следующей страницы.
Однако, с точки зрения более широкой безопасности, все, что входит в файл сеанса, может быть прочитано чем-либо еще, запущенным под тем же экземпляром веб-сервера (например, идентификатор пользователя Apache). Таким образом, вы не можете хранить конфиденциальные данные, пусть такие вещи, как номера кредитной корзины/cvv.
Его довольно безопасно бросать то, что вы хотите в сеансе, не дезинфицируя его. Вы могли бы, хотя, поскольку вы собираетесь в любом случае, дезинфицировать его, прежде чем положить его на сессию, чтобы он был готов зайти в базу данных, тогда вы сможете спокойно спать.
до тех пор, пока переменные не передаются моей ссылкой и есть предостережение, используемое с объектами – RobertPitt
, это неправильный подход. данные могут идти повсюду - электронная почта, обратно в форму на некоторые ошибки и т. д. И, чтобы вы знали - обработчик сеанса НЕ является местом, где можно делать что-либо, связанное с базой данных. Он должен быть обработчиком базы данных, где данные должны быть правильно подготовлены. –
Это не значит, что мой ответ заслуживает голосования. Я не спорю, как он это делает, я просто ответил на его вопрос. Нет необходимости санировать данные перед тем, как поместить их в сеанс. Если он планирует повторно отобразить его или отправить по электронной почте, это его проблема, о которой нужно беспокоиться. Он ничего не упоминал. Просто сохраните его, когда они перейдут к следующим шагам. Полковник тролль снова наносит удар. – profitphp
хорошо, чтобы избежать проблем, восстановления данных, я предлагаю вам использовать имя для сеанса и использовать массив исключительно для почтовых данных, своего рода:
$ _SESSION [ «PostData»] = $ _ПОСЛЕ;
- 1. Сохранение данных на сессии WooCommerce
- 2. Потеря сессии на POST
- 3. Сохранение данных для сессии в JSF
- 4. Сохранение данных POST на страницу Неопределенно
- 5. Сохранение реального времени холст сессии данных на узле JS
- 6. Сохранение вкладок в POST-данных
- 7. Сохранение объектов в сессии
- 8. «перерегистрация» PHP сессии на основе формы POST
- 9. Сохранение истории из определенной сессии
- 10. Джанго: сохранение запроса до сессии
- 11. PHP сохранение объекта в сессии
- 12. Сохранение объекта в сессии - struts2
- 13. Symfony сохранение локаль в сессии
- 14. Сохранение состояния пользователя в сессии
- 15. Wordpress: сохранение данных формы и POST внешних
- 16. Сохранение данных json, возвращаемых из jQuery post
- 17. Laravel: Передача данных на сессии
- 18. Сохранение данных ajax post в модели django
- 19. Сохранение двоичных данных POST с помощью ADODB.Stream
- 20. Переадресация с домена.com на www.domain.com Сохранение данных GET & POST
- 21. post/redirect/получить и сохранить запрос базы данных в СЕССИИ
- 22. Сохранение данных между сеансами без использования get, post или cookies
- 23. Хранение секретных данных внутри сессии
- 24. Потеря данных на странице Обновление php сессии
- 25. Обновление данных данной СЕССИИ
- 26. Tensorflow: сохранение и resoring сессии - несколько переменных
- 27. Сохранение значения как сессии в JavaScript
- 28. JQuery - сохранение PHP сессии AJAX немого
- 29. Сохранение значений тензора между сессии работает
- 30. Сохранение значений форм после POST
Это просто данные. –
Лучше безопасно, чем извините;) – NightHawk