<div dir="ltr">Password managers are becoming increasingly naive when it comes to filling a form with username/password. In fact Firefox&#39;s algorithm is as simple as:<div><br></div><div>* Is there a input type=text followed by input type=password then sure it&#39;s a login form</div><div>* autocomplete=false let&#39;s ignore that, otherwise those pesky web developers may stop us from filling username/password</div><div><br></div><div>Makes sense right? Well sure it does as long as it&#39;s an actual login form. Problems comes when it&#39;s not, for example in Keycloak:</div><div><br></div><div>* Admin wants to reset user credentials - Firefox enters admins own password</div><div>* Admin wants to register a identity broker - Firefox enters admins username/password as client id/secret</div><div>* User wants to register new user - Firefox enters previously used password</div><div>* This is the best one! When admin wants to configure a authenticator and the config type is a string Firefox enters the password into the hidden password input, then since the visible text field and the hidden password field share the same model Angular copies the value from the hidden password field to the text field and no the admins password is visible in clear text. More details in KEYCLOAK-2804.</div><div><br></div><div>Awesome stuff! Every form with a password field must be a login form right?!?</div><div><br></div><div>Solution is simple. If you create a form that has a input type=password then add the following to the top of the form:<br><br>    &lt;input type=&quot;text&quot; readonly value=&quot;this is not a login form&quot; style=&quot;display: none;&quot;&gt;<br>    &lt;input type=&quot;password&quot; readonly value=&quot;this is not a login form&quot; style=&quot;display: none;&quot;&gt;</div><div><br></div><div>This will make the password manager assume does fields are the username/password fields and since they are readonly it won&#39;t fill them.</div><div><br></div><div>Changes to Keycloak here <a href="https://github.com/keycloak/keycloak/pull/2600">https://github.com/keycloak/keycloak/pull/2600</a>.</div></div>