首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何防止浏览器存储密码

如何防止浏览器存储密码
EN

Stack Overflow用户
提问于 2016-12-19 06:39:57
回答 24查看 137.8K关注 0票数 94

我需要阻止浏览器存储用户名和密码值,因为我正在开发一个包含更安全数据的web应用程序。我的当事人让我这么做的。

我尝试了HTML和password字段中的autocomplete="off"属性。但它不能在最新的浏览器,如Chrome 55,火狐38+,互联网浏览器11等。

什么是最好的解决办法?

EN

回答 24

Stack Overflow用户

回答已采纳

发布于 2016-12-28 13:13:53

谢谢你给我一个答复。我遵循下面的链接

禁用浏览器“保存密码”功能

我通过在输入中添加readonly & onfocus="this.removeAttribute('readonly');"属性(除了autocomplete="off" )就解决了这个问题,如下所示。

代码语言:javascript
运行
复制
<input type="text" name="UserName" autocomplete="off" readonly 
onfocus="this.removeAttribute('readonly');" >

<input type="password" name="Password" autocomplete="off" readonly 
onfocus="this.removeAttribute('readonly');" >

这对我来说很好。

票数 66
EN

Stack Overflow用户

发布于 2016-12-19 06:56:58

试图阻止浏览器存储密码是不建议做的事情。有一些解决办法可以做到这一点,但现代浏览器没有提供这一功能的开箱即用,而且有充分的理由。现代浏览器将密码存储在密码管理器中,以便使用户能够使用比通常更强的密码。

MDN:如何关闭表单自动完成所解释

现代浏览器实现了集成的密码管理:当用户输入站点的用户名和密码时,浏览器提供给用户记住它。当用户再次访问站点时,浏览器将使用存储的值自动填充登录字段。 此外,浏览器还允许用户选择主密码,浏览器将使用该密码加密存储的登录详细信息。 即使没有主密码,浏览器中的密码管理通常也被视为安全的净收益。由于用户不必记住浏览器为他们存储的密码,所以他们可以选择比其他密码更强的密码。 因此,许多现代浏览器不支持登录字段的autocomplete="off"

  • 如果站点为表单设置了autocomplete="off",并且表单包含用户名和密码输入字段,则浏览器仍将提供记住此登录,如果用户同意,浏览器将在下次用户访问页面时自动填充这些字段。
  • 如果站点为用户名和密码输入字段设置了autocomplete="off",那么浏览器仍然会提供记住此登录,如果用户同意,浏览器将在下次用户访问页面时自动填充这些字段。

这是火狐(自38版以来)、Google (自34版)和Internet (自11版以来)的行为。

如果作者希望防止在用户管理页中自动填充密码字段,用户可以为自己以外的人指定新密码,则应指定autocomplete="new-password",尽管尚未在所有浏览器中实现对此的支持。

票数 42
EN

Stack Overflow用户

发布于 2018-03-15 16:33:26

这里是一个纯HTML/CSS解决方案的Chrome测试在版本65.0.3325.162 (正式构建)(64位)

设置输入type="text"并使用CSS text-security:disc模拟type="password"

代码语言:javascript
运行
复制
<input type="text" name="username">
<input type="text" name="password" style="text-security:disc; -webkit-text-security:disc;">
  • 注意:在Firefox中工作,但是CSS moz-text-security被弃用/删除。要解决这个问题,请创建一个仅由点组成的CSS font-face,并使用font-family: 'dotsfont';.Source:让输入type=text看起来像type=password

上面的源代码包含一个指向、CSS、moz-text-security-webkit-text-security属性工作内容的链接。

来源:https://github.com/kylewelsby/dotsfont

据我测试,此解决方案适用于ChromeFirefox版本59.0 (64位)Internet版本11.0.9600以及IE模拟器、Internet 5及更高版本。

票数 24
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41217019

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档