1Password 4 not obeying "autocomplete" attribute on form input field
Comments
-
Hi @sunjunkie,
Thanks for the question!
First of all, 1Password ignores the autocomplete setting by design. This is one of the competitive advantages 1Password has over browsers' login saving features. Browsers really have to respect this attribute and 1Password intentionally ignores it. We think users are safer with 1Password than they are with their browser respecting sites' desires to force them to type in their username and password each time. We don't want to provide a way for forms to exclude 1Password filling. If we did, sites would be able to provide users of 1Password with a less secure browsing experience than they should otherwise have. If we wanted to allow that, we would simply respect the autocomplete attribute.
It's also important to note that 1Password will never autofill data. Filling is only done in response to a specific user request for that data to be filled. That request can happen a few different ways, but the most common way is the use of the keyboard shortcut. So, user comes to a page with a form and hits the "fill" shortcut (⌘\ by default). If there is only one login for the current page, we fill it. At this point, 1Password's process starts with one fundamental truth: the user asked us to fill this data that we have in 1Password into the current page. From that assumption, we have a few different iterations of "Let's fill this data on this page". Initially, we look for forms that match the form as it was originally saved based on name, id, and action attributes. Then we progress through some other, less precise filling code until eventually we have a "fallback" that says, "We couldn't find fields that match exactly, so we're filling the username and password into every non-password field and password field respectively that hasn't been filled yet. (This last bit of code has become a source of trouble and we're eyeing it for potential removal.)
I hope this helps to explain how 1Password works with forms. Please let me know if you have any further questions! :)
0