强制 Chrome 从不在特定站点上保存密码
Forcing Chrome to never save password on a specific site
我处于 Chrome 扩展开发的初学者水平,但对软件开发来说并不陌生。我在整个学区管理 ChromeOS 台设备。有一个特定的测试站点要求学生使用用户名和密码登录。根据特定测试,密码始终相同。教师发现学生使用保存的密码跳到下一个测验。
我们可以为所有 站点禁用密码保存、启用它或允许用户配置。我真的不想禁用密码保存,因为不必重新输入密码很有用(尤其是对于年轻 children)。
此时我唯一的解决方案是推出一个扩展程序,手动将站点 .neversavepassword.com 添加到管理密码的 "Never Save" 部分.但是,在搜索了最后 2 天之后,我似乎无法找到有关如何执行此操作的任何信息(这似乎不可能)。
此时我有哪些选择?该站点已使用 "autocomplete=off",但 Chrome 忽略了这一点。
这是登录表单。
<div class="row-wrapper">
<div class="login-row">
<label for="tbUsername">User Name </label>
<input name="ctl00$cp_Content$tbUserName" type="text" value="test" maxlength="50" id="tbUserName" tabindex="1" class="loginTB" autocomplete="off" />
</div>
<div class="login-row">
<label for="tbPassword">Password </label>
<span><input name="ctl00$cp_Content$tbPassword" type="password" maxlength="20" size="25" id="tbPassword" tabindex="2" class="loginTBn" /></span>
</div>
<div class="login-row">
<button onclick="__doPostBack('ctl00$cp_Content$btnLogIn','')" id="btnLogIn" type="button" class="button hollow white" tabindex="3">
<span id="ctl00_cp_Content_spLogin" class="text">Log In </span>
<span class="glyph glyph-chevron-next"></span>
</button>
</div>
我想我可以通过 javascript 修改表格,但到目前为止我还没有成功。
非常感谢有关此问题的任何建议。谢谢!
首先,Chrome的official position差不多是"ignore any attempts to circumvent that"。
扩展无法与密码管理器交互,因此这不是解决方案。
更新:有chrome.privacy.services.passwordSavingEnabled
,但不允许按站点微调,它只是一个on/off开关。
我看到一个页面通过使用页面代码从表单中获取凭据,清除表单,然后执行与原始表单无关的 POST 来绕过该机制。这让 Chrome 感到困惑,以至于认为这些值没有被使用。同样,不这样做是有充分理由的。
我处于 Chrome 扩展开发的初学者水平,但对软件开发来说并不陌生。我在整个学区管理 ChromeOS 台设备。有一个特定的测试站点要求学生使用用户名和密码登录。根据特定测试,密码始终相同。教师发现学生使用保存的密码跳到下一个测验。
我们可以为所有 站点禁用密码保存、启用它或允许用户配置。我真的不想禁用密码保存,因为不必重新输入密码很有用(尤其是对于年轻 children)。
此时我唯一的解决方案是推出一个扩展程序,手动将站点 .neversavepassword.com 添加到管理密码的 "Never Save" 部分.但是,在搜索了最后 2 天之后,我似乎无法找到有关如何执行此操作的任何信息(这似乎不可能)。
此时我有哪些选择?该站点已使用 "autocomplete=off",但 Chrome 忽略了这一点。
这是登录表单。
<div class="row-wrapper">
<div class="login-row">
<label for="tbUsername">User Name </label>
<input name="ctl00$cp_Content$tbUserName" type="text" value="test" maxlength="50" id="tbUserName" tabindex="1" class="loginTB" autocomplete="off" />
</div>
<div class="login-row">
<label for="tbPassword">Password </label>
<span><input name="ctl00$cp_Content$tbPassword" type="password" maxlength="20" size="25" id="tbPassword" tabindex="2" class="loginTBn" /></span>
</div>
<div class="login-row">
<button onclick="__doPostBack('ctl00$cp_Content$btnLogIn','')" id="btnLogIn" type="button" class="button hollow white" tabindex="3">
<span id="ctl00_cp_Content_spLogin" class="text">Log In </span>
<span class="glyph glyph-chevron-next"></span>
</button>
</div>
我想我可以通过 javascript 修改表格,但到目前为止我还没有成功。
非常感谢有关此问题的任何建议。谢谢!
首先,Chrome的official position差不多是"ignore any attempts to circumvent that"。
扩展无法与密码管理器交互,因此这不是解决方案。
更新:有chrome.privacy.services.passwordSavingEnabled
,但不允许按站点微调,它只是一个on/off开关。
我看到一个页面通过使用页面代码从表单中获取凭据,清除表单,然后执行与原始表单无关的 POST 来绕过该机制。这让 Chrome 感到困惑,以至于认为这些值没有被使用。同样,不这样做是有充分理由的。