Como evitar o aviso de não segurança no Chrome

Conforme anunciado em setembro, o Chrome em breve marcará páginas não seguras com os campos de entrada senha e cartão de crédito como Não segura na barra de URL.

O objetivo deste documento é ajudar os desenvolvedores da Web a atualizar os sites para evitar esse aviso.

Ativar avisos

Os avisos serão ativados por padrão para todos no Chrome 56, com lançamento previsto para janeiro de 2017.

Para testar a próxima experiência do usuário antes dessa data, instale a versão mais recente do Google Chrome Canary.

Para configurar o Chrome para mostrar o aviso da mesma forma que ele será mostrado em janeiro de 2017, abra chrome://flags/#mark-non-secure-as e defina a opção Mark non-secure origins as non-secure como Display a verbose state when password or credit card fields are detected on an HTTP page. Em seguida, reinicie o navegador.

Você pode ver um exemplo do comportamento de aviso do navegador nesta página.

Quando o estado "Não seguro" é mostrado, o console do DevTools mostra a mensagem This page includes a password or credit card input in a non-secure context. A warning has been added to the URL bar..

Um exemplo de aviso do console.

Resolver avisos

Para garantir que o aviso "Não seguro" não seja mostrado nas suas páginas, é preciso garantir que todos os formulários com elementos <input type=password> e entradas detectadas como campos de cartão de crédito estejam presentes somente em origens seguras. Isso significa que a página de nível superior precisa ser HTTPS e, se o input estiver em um iframe, esse iframe também precisará ser exibido por HTTPS.

Se o site sobrepor um frame de login HTTPS em páginas HTTP...

Um exemplo de login HTTPS por HTTP.

Você vai precisar mudar o site para usar HTTPS em todo o site (ideal) ou redirecionar a janela do navegador para uma página HTTPS que contenha o formulário de login:

Um exemplo de login HTTPS por HTTPS.

Longo prazo: usar HTTPS em qualquer lugar

Eventualmente, o Chrome mostrará um aviso "Não seguro" para todas as páginas exibidas por HTTP, independentemente de a página conter ou não campos de entrada confidenciais. Mesmo que você adote uma das resoluções mais segmentadas acima, planeje a migração do seu site para usar HTTPS em todas as páginas.