Otimizações para a mudança automática de senha

Otimize seu site para que o Gerenciador de senhas do Google possa automatizar as mudanças de senha para credenciais comprometidas.

A mudança automática de senha ajuda os usuários a atualizar rapidamente senhas encontradas em violações de dados públicas para usuários do Chrome em computadores nos EUA. Quando o Google detecta que uma senha salva foi exposta, o Gerenciador de senhas do Google pode criar uma substituição forte e exclusiva e atualizá-la para seus usuários.

O recurso preenche o formulário de mudança de senha do site para o usuário com uma senha nova e forte e a salva no Gerenciador de senhas do Google, tudo em segundo plano. Isso elimina a necessidade de atualizações manuais e ajuda os usuários a manter a conta segura.

Experiência do usuário

Quando um usuário faz login em um site compatível usando uma senha comprometida, o Gerenciador de senhas do Google pode oferecer a troca dela. Se ela aceitar, o processo de mudança automática de senha vai começar.

A mudança automática de senha navega pelo site e conclui a atualização da senha para o usuário.

O usuário pode cancelar a operação enquanto ela está em andamento. Depois que o processo for concluído, a nova senha será salva no Gerenciador de senhas do Google e vinculada à Conta do Google, ficando disponível em todos os dispositivos sincronizados.

Como as senhas comprometidas são identificadas

Quando um usuário salva uma senha ou faz login em um site, o Chrome verifica se o nome de usuário e a senha apareceram em uma violação de dados pública.

Para isso, o Chrome usa um processo de preservação da privacidade para comparar suas credenciais criptografadas com uma lista de violações conhecidas. Se uma correspondência for encontrada, o Chrome notificará o usuário de que a senha está comprometida. O Google nunca vê nomes de usuário ou senhas reais. Para mais detalhes, leia sobre como o Google ajuda a proteger suas contas contra violações de dados no Blog de segurança do Google.

As listas de senhas comprometidas são estabelecidas por violações de dados públicas e analistas de segurança.

Otimização para mudança automática de senha

Para otimizar seu site para a mudança automática de senha e melhorar a compatibilidade com o Gerenciador de senhas do Google e outras ferramentas, implemente os seguintes padrões da Web e práticas recomendadas. Essas mudanças ajudam navegadores e gerenciadores de senhas a interagir de forma confiável com formulários relacionados a senhas.

Usar um URL de alteração de senha conhecido

Use o caminho /.well-known/change-password para anunciar a localização da sua página de mudança de senha. Esse URL ajuda navegadores e gerenciadores de senhas, como o Gerenciador de senhas do Google, a direcionar rapidamente os usuários ao lugar certo quando uma atualização de senha é necessária.

Exemplo:

https://yourdomain.com/.well-known/change-password

Isso melhora a experiência do usuário e oferece suporte a recursos como a mudança automática de senha. Ao seguir esse caminho, você aumenta a probabilidade de o site ser compatível com ferramentas automatizadas.

O URL /.well-known/change-password precisa redirecionar para o formulário de mudança de senha.

É possível implementar o redirecionamento de duas maneiras:

  • Do lado do servidor (recomendado):
    • Configure seu servidor da Web (como Apache ou Nginx) para emitir um redirecionamento temporário usando o código de status HTTP 302, 303 ou 307.
    • Evite usar 301 (redirecionamento permanente) caso o destino mude.
    • Se o usuário não tiver feito login, o redirecionamento poderá levá-lo primeiro a um fluxo de login.
  • Atualização de metadados HTML (alternativa):

    • Exiba uma página HTML básica no caminho conhecido que realiza um redirecionamento do lado do cliente:
    <!DOCTYPE html>
    <html>
    <head>
      <meta http-equiv="refresh" content="0;url=https://example.com/settings/password">
      <title>Redirecting...</title>
    </head>
    <body>
      <p>Redirecting you to the change password page...</p>
    </body>
    </html>
    
    • O caminho /.well-known/change-password não pode hospedar o formulário real de mudança de senha. Ele se destina apenas à descoberta e ao redirecionamento. Consulte Um URL conhecido para mudar senhas para mais detalhes.

Consulte o artigo Ajude os usuários a mudar senhas facilmente adicionando um URL conhecido para alterar senhas para saber mais sobre o URL conhecido de alteração de senha.

Usar atributos de preenchimento automático em formulários

Os navegadores e gerenciadores de senhas usam o atributo autocomplete para entender a finalidade dos campos de formulário. Esse atributo ajuda a melhorar a precisão do preenchimento automático, permite a geração de senhas e é necessário para que recursos como a mudança automática de senha funcionem de maneira confiável.

Use estes valores de autocomplete:

Valor Finalidade Uso comum
username Identifica o nome de usuário da conta. Login, inscrição, mudança de senha
current-password Campo para a senha atual Login, mudança de senha
new-password Campo para uma nova senha Inscrição, alteração e redefinição de senha

O snippet de código a seguir mostra um exemplo de formulário com valores autocomplete:

...
<form action="/change-password-handler" method="post">
  <div>
    <label for="current-pw">Current password:</label>
    <input type="password" id="current-pw" name="current-password"
           autocomplete="current-password" required>
  </div>

  <div>
    <label for="new-pw">New password:</label>
    <input type="password" id="new-pw" name="new-password"
           autocomplete="new-password" required minlength="8"
           aria-describedby="password-constraints">
    <div id="password-constraints">Minimum 8 characters.</div>
  </div>

  <div>
    <label for="confirm-pw">Confirm new password:</label>
    <input type="password" id="confirm-pw" name="confirm-password"
           autocomplete="new-password" required minlength="8">
  </div>

  <button type="submit">Change password</button>
</form>
...

Práticas recomendadas adicionais

Siga estas diretrizes para melhorar a usabilidade e a compatibilidade dos formulários de mudança de senha:

  • Use elementos HTML semânticos, como <form>, <label> e <button>.
  • Verifique se os rótulos estão vinculados corretamente às entradas usando os atributos for e id.
  • Mostrar regras de senha com atributos como minlength ou pattern e fornecer orientação inline.
  • Mostre uma mensagem de confirmação ou erro perto do formulário.