Как сделать так, чтобы браузер не сохранял данные поля формы html?
При вводе в html-формах браузеры любят firefox или сохраняют значения, иногда незаметно. Таким образом, при вводе данных в другой веб-форме браузер разумно предлагает ту же информацию. Другой способ показать выпадающий список - дважды щелкнуть пустое текстовое поле.
На веб-сайте электронной торговли клиент вводит номер кредитной карты и другую конфиденциальную информацию. Как мне избежать или заблокировать браузер для хранения этой конфиденциальной информации?
Другая проблема связана с сохранением данных подделанных форм (например, вредоносной программой). Затем клиент может выбрать эти загрязненные данные и поставить под угрозу сайт.
С уважением.
5 ответов
Попробуй с атрибутом autocomplete="off"
Он должен работать для отдельных элементов ввода:
<input type="text" autocomplete="off" name="text1" />
или на всю форму:
<form name="form1" id="form1" method="post" autocomplete="off"
action="http://www.example.com/action">
[...]
</form>
И специально для ASP .NET вы можете установить его так:
Форма веб-форм:
<form id="Form1" method="post" runat="server" autocomplete="off">
Textboxes:
<asp:TextBox Runat="server" ID="Textbox1" autocomplete="off"></asp:TextBox>
или во время выполнения:
Textbox1.Attributes.Add("autocomplete", "off");
Смотрите более подробное обсуждение здесь:
Как отключить автозаполнение браузера в поле веб-формы / теге ввода?
Похоже, autocomplete="off" будет работать в некоторых случаях, но не совместимо с XHTML.
Рекомендуется использовать autocomplete="off" для общедоступных компьютеров, когда вы храните такие данные, как имена пользователей, номера кредитных карт и тому подобное.
Поэтому, если вы строите систему интрасети, все будет в порядке.
Как уже говорили другие, ответ autocomple="off"
Тем не менее, я думаю, что стоит заявить, почему в некоторых случаях полезно использовать это, поскольку некоторые ответы на этот вопрос и повторяющиеся вопросы позволяют предположить, что лучше не выключать их.
Остановка браузеров, хранящих номера кредитных карт, не должна предоставляться пользователям. Слишком много пользователей даже не осознают, что это проблема.
Особенно важно отключить его в полях для кодов безопасности кредитных карт. Как говорится на этой странице
"Никогда не сохраняйте защитный код... его значение зависит от предположения, что единственный способ предоставить его - это прочитать его с физической кредитной карты, доказав, что лицо, его предоставляющее, действительно держит карту".
Проблема в том, что если это общедоступный компьютер (интернет-кафе, библиотека и т. Д.), То другие пользователи смогут легко украсть данные вашей карты, и даже на вашем компьютере вредоносный веб-сайт может украсть данные автозаполнения.
<input autocomplete="new-password">
Это работает там, где "выключено" нет.
Вы можете поставить на поля ввода:
autocomplete="off"
как атрибут
Это, как говорится: не делай этого.
С точки зрения юзабилити это ужасная идея. Особенно, если есть проверка поля. Нет ничего более раздражающего, чем необходимость перепечатывать части формы, потому что вы должны исправить совершенно не связанную форму. Большинству пользователей нравится тот факт, что им не нужно вводить номера кредитных карт, их имена, адреса электронной почты и т. Д.
Отключив такие функции, вы будете раздражать гораздо больше пользователей, чем помогаете.
В конечном счете, безопасность - это проблема пользователя и его прерогатива. Подавляющее большинство людей используют персональные или рабочие ПК, поэтому хорошо кешируют такую информацию. Правильно настроенные публичные терминалы очистят данные формы, когда пользователь выйдет из системы.
Так кому именно ты помогаешь?