【发布时间】:2013-01-25 03:58:18
【问题描述】:
我已经对其进行了研究,但找不到一种标准、可靠的方法来使浏览器阻止自动填充并且不记住标准登录表单中的密码。
这对我来说很重要,因为我正在开发一个移动网络应用程序,所以如果用户点击注销并且其他人拿到了他们的手机,浏览器不应该只通过给他们密码来帮助他们!
我能想到的唯一解决方案是让密码字段 type="text"。
当然,这意味着人们可以“冲浪”并查看用户正在输入的内容,但同一个人几乎可以轻松地观察用户的手指以查看他们正在输入的密码......
我认为间谍软件在这里也不是一个真正的问题,因为我认为 type="password" 字符掩码不会阻止恶意键盘记录器等执行其操作。
那么,我想知道在密码字段中使用 type="text" 是否还有其他安全问题我可能遗漏了?
也许如果我将这个想法与输入的动态/随机“名称”属性结合起来,我能成为赢家吗?
注意 - 解决方案需要与 XHTML Mobile Profile 兼容。
另外,请不要就此处语义正确的内容向我提供建议。我的首要任务是安全性,而不是语义。 :)
【问题讨论】:
-
没有什么能阻止浏览器记住文本输入。事实上,它可能会更容易记住它们,因为它们“对安全不敏感”。
-
浏览器记住或不记住任何东西是设备设置,而不是服务器设置。您可以向用户提出建议,但如果他们希望他们的设备记住他们的密码,那么您不应该试图破坏这一点。
-
谢谢,大卫,但我认为必须有比要求人们离开并调整他们的设备设置更好的解决方案。绝大多数用户会觉得这太麻烦了,并且以前从未接触过这些设置。无论如何,我并没有破坏任何用户偏好,因为我提供了自己的“记住密码”复选框。
-
Deceze,到目前为止我运行的测试表明相反。浏览器设置的问题在于,一旦用户(通过浏览器对话)允许浏览器记住密码,他们就很难让浏览器忘记密码。 (在“记住密码”和“注销”中添加一些 UI 代码对每个人来说都容易得多......)
-
另外,Deceze,浏览器似乎没有记住密码,因为我在我的问题中描述的输入使用动态/随机“名称”属性。但是,如果我使用带有动态/随机“名称”属性的 type="password",则密码 is 会自动填充。
标签: html browser input passwords autofill