【发布时间】:2012-04-26 13:51:18
【问题描述】:
我有一个带有只读字段的表单,用于显示/提交到下一页。
但是,我注意到在 Chrome 中使用开发人员工具时,我能够向元素添加 id,使用 javascript 控制台选择该元素并更改其值。我提交了表单,你知道什么 - 下一页对其进行操作,就好像它是原始值一样。
现在,使用我正在构建的网站的人应该没有任何问题,但对我来说这似乎是一个巨大的安全漏洞。只读的目的不是保持不变吗?如果一个精明的用户改变它,那不是一个大问题吗?事实上,我什至不认为你可以在 chrome 中添加和更改属性。
请在下面发表您的想法,如果有解决方案,请告诉我(“禁用”文本字段,但设置禁用属性不会将数据发送到下一页)。
【问题讨论】:
-
这就是我们必须清理用户输入的原因。如果您不想让他们编辑,请不要将其放在表单上。
-
您可以在 Chrome、Firefox 甚至 IE 中执行此操作...
-
如果您有一个可以发布内容的 URL,您必须在服务器上编写代码以期望真正发布 anything。用户可以完全控制浏览器以及发布到您网站的内容。网络上总是如此——这只是系统的本质。
-
没有办法阻止用户使用 javascript 来更改输入。 Readonly 只是禁用正常用户输入的浏览器提示。
-
重点不在于哪些浏览器可以做到;我非常了解其他浏览器中的开发人员工具。它甚至也不是关于清理的——除非你的意思是检查文本字段是否是原始值(并且存储变量的唯一安全方法是使用会话?!!?)
标签: javascript html forms google-chrome readonly