如今,Web应用程序提供注册页面时,通常会复制密码字段(有时甚至是电子邮件字段)。
通过两次输入密码,它可以确保您没有输入任何错误。 并且您下次尝试登录时不必重置密码。 如果您实际输入密码,这是有道理的。 我,我正在使用密码管理器。 这意味着,我将两次从密码管理器获取的密码进行复制粘贴。 到目前为止,一切都很好。
现在,一些Web应用程序假定人们确实输入了密码。 更糟糕的是,这些应用程序背后的人们对密码管理器一无所知。 他们通过阻止在第二个密码字段中键入粘贴命令来强制在该字段中键入密码。 这意味着像我这样的密码管理器用户必须手动输入20个以上的随机字符。 不能接受!
幸运的是,如果您愿意进行一些黑客入侵,那么有个整洁的解决方案。 使用任何现代导航仪,找到有罪的密码输入字段,然后:
- 获取其
id
, 例如myId
- 获取与其
onpaste
属性关联的函数的名称, 例如dontPaste
- 在JavaScript控制台中运行以下命令:
document.getElementById('myId').removeElementListener('paste','dontPaste');
但是,在某些情况下,该函数是匿名的,并且先前的代码无法执行。 精细。 然后,运行:
document.getElementById('myId').onpaste=null;
结论
这篇简短的文章有一些结论。
第一个是,成为一名开发人员真的很酷,因为它使您避免了很多麻烦。
第二个是永远不要执行这种检查。 如果用户不记得自己的密码,请提供一种重置密码的方法。 无论如何,您将需要此功能。 但是复制密码会使使用密码管理器更加困难。 因此,它降低了安全性。 在当今时代,这不仅浪费时间,而且是一个严重的错误。
最后,作为开发人员来回避这种愚蠢的要求是您的“道德”责任。
PS:这篇文章的完整标题应该是``绕过愚蠢的Java脚本检查'',但在Google搜索结果中效果不佳...