2010-06-08 3 views
1

Каков ваш предпочтительный способ поддержания состояния страницы asp.net, если это общедоступный веб-сайт (с участием корзины покупок, списка пожеланий и т. Д.). Я занимаюсь разработкой веб-сайта, который должен гарантировать, что пользователь не сможет вмешиваться в состояние (например, удалять файлы cookie и т. Д.).Поддержание состояния страницы asp.net

ответ

2

Оба этих фрагмента данных (корзина для покупок &) выглядят так, как будто они должны храниться в вашей базе данных, чтобы они сохранялись после удаления файлов cookie или времени сеанса.

0

Я нахожусь в процессе проектирования сайт, который нужно будет обеспечить, чтобы пользователь не может вмешиваться в состояние (например, удалить куки и т.д.).

Я бы использовал session state. Это легко и эффективно.

Вы не можете остановить их от несанкционированного доступа к нему, удаляя файлы cookie и т. Д. Возможно, это изменение файлов cookie, но не удаление их.

Вы можете хранить важную информацию на сервере, поэтому не секретная информация не хранится на клиенте в куки и т.д.

2

Для предотвращения несанкционированного доступа пользователю нужно будет сохранять состояние сеанса на стороне сервера. Хорошей практикой является сохранение ее либо в базе данных (sql server), либо вне процесса, которая может быть либо на том же сервере, либо на другом сервере, иногда называемом государственным сервером.

0

Предпочтительный способ поддержания состояния - использовать viewstate. Тем не менее, вы хотите сохранить сумму, которую вы храните в ней, до минимума, так как она заметно повлияет на скорость.

Если вам нужно сохранить информацию со страницы на страницу, я бы рекомендовал использовать состояние сеанса. Это легко и очень гибко.

0

Пользователь всегда будет в состоянии вмешиваться в любой способ, который вы используете для хранения состояния. Рассмотрим следующие примеры:

  • Cookies - можно изменять, удалять
  • Session - можно удалить, тайм-аут, сеанс смены ключа
  • ViewState - может связываться с ключом

Я шифровать свои данные и хранить ключ в файле cookie - например, идентификатор корзины, идентификатор пользователя и т. д. Файл cookie может быть загружен при входе в систему и может быть изменен, но поскольку ключ зашифрован, реального вреда не может быть сделано. Хранение в сеансе может работать, но тайм-ауты укусили меня во многих случаях и требуют большего внимания.

+0

Что вы используете для шифрования данных? – user279521

Смежные вопросы