如何在 Struts 中防止浏览器保存密码提示






4.95/5 (4投票s)
防止浏览器在 STRUTS 表单中使用时有意或无意地保存管理员用户密码
引言
信息安全报告发现了一个漏洞报告,其中提到登录提交表单后,浏览器会询问是否“保存密码”,并且保存的密码很容易被解密。
背景
当我开始修复这个问题时,我在整个互联网上搜索,但没有找到答案。大多数人说这取决于用户选择。但是,开发团队可能不想冒险,并强调要修复它。
Using the Code
好吧,在互联网上无望地搜索并尝试了许多方法(例如传奇的“
autocomplete=off
”选项,虽然它帮助我欺骗了浏览器的自动填充功能,但它并没有起作用),我编写了一个虚拟密码字段,并将其 style="diplay:none"
,然后保持我原始的 <html:password >
字段不变,这样对我欺骗浏览器就有效了。原始实现如下
<td align="right" id="any">
<html:password property="password"
redisplay="false" styleClass="any" maxlength="10"/>
</td>
现在,每当用户提交表单时,浏览器(Internet Explorer 11、Chrome)都会弹出一个提示,例如“您是否要保存密码?”。
起作用的诀窍是我将其修改为以下方式。
<input type="password" style="display:none"/>
<td align="right" id="any">
<html:password property="password"
redisplay="false" styleClass="any" maxlength="10"/>
</td>
关注点
浏览器总是会看到第一个密码字段,并会查看它以采取进一步的操作。通过应用上述技巧,现在浏览器看到的是密码字段为空,它们不会提示询问“保存密码”。