Skip to content

HTTPS / TLS

O HTTPS (Hypertext Transfer Protocol Secure) é a versão segura do protocolo HTTP. Ele utiliza o protocolo TLS (Transport Layer Security) para criptografar toda a comunicação entre o navegador e o servidor.

Pilares do HTTPS

  1. Criptografia: Protege os dados contra interceptação (ataques Man-in-the-Middle).
  2. Integridade: Garante que os dados não foram alterados durante o trânsito.
  3. Autenticação: Prova que o usuário está realmente conversando com o servidor legítimo (através de certificados SSL/TLS).

Mixed Content (Conteúdo Misto)

Ocorre quando um site carregado via HTTPS tenta carregar recursos (imagens, scripts, fontes) via HTTP comum. Os navegadores modernos bloqueiam automaticamente o "Active Mixed Content" (scripts) e exibem avisos de segurança para "Passive Mixed Content" (imagens), pois esses recursos podem ser vetores de ataques.


Como fazer vs Como não fazer

✅ Como fazer

  • Utilize HTTPS em todos os ambientes (Desenvolvimento, Staging e Produção).
  • Configure o cabeçalho HSTS (Strict-Transport-Security) para forçar o navegador a usar apenas HTTPS em todas as requisições futuras.
  • Utilize URLs relativas (ex: /assets/logo.png) ou URLs absolutas com HTTPS para evitar problemas de Mixed Content.
  • Verifique periodicamente a validade e a força da configuração do seu certificado TLS.

❌ Como não fazer

  • Nunca carregue scripts externos via HTTP em uma página HTTPS. Isso invalida toda a segurança da página, pois o script HTTP pode ser alterado para roubar dados da página segura.
  • Não ignore avisos de "Certificado Inválido" ou "Conexão Não Segura" durante o desenvolvimento. Isso treina o desenvolvedor a ignorar riscos reais.
  • Não utilize versões obsoletas do protocolo TLS (como TLS 1.0 ou 1.1) que possuem vulnerabilidades conhecidas. Use sempre TLS 1.2 ou superior.