Skip to content

Same-Origin Policy (SOP)

A Política de Mesma Origem é o pilar fundamental da segurança na web. Ela impede que um script em uma página acesse dados de outra página, a menos que ambas as páginas tenham a mesma origem.

O que é uma "Origem"?

Uma origem é definida pela combinação de três elementos:

  1. Protocolo (ex: http, https)
  2. Domínio (ex: portaltelemedicina.com.br)
  3. Porta (ex: 80, 443, 3000)

Se qualquer um desses elementos for diferente, o navegador considera como origens distintas e bloqueia o acesso direto via scripts (AJAX, Fetch, DOM).

Por que isso importa?

Sem a SOP, se você estivesse logado no seu banco e abrisse um site malicioso em outra aba, esse site poderia usar scripts para ler seus cookies de sessão do banco, ler o saldo da sua conta ou realizar transferências em seu nome.


Como fazer vs Como não fazer

✅ Como fazer

  • Confie na SOP como a primeira linha de defesa automática do navegador.
  • Utilize mecanismos oficiais como CORS quando precisar deliberadamente compartilhar recursos entre diferentes domínios.
  • Mantenha suas subáreas em domínios ou portas consistentes para facilitar a comunicação legítima.

❌ Como não fazer

  • Tentar contornar a SOP usando técnicas inseguras como document.domain (depreciado e inseguro).
  • Assumir que a SOP protege contra tudo; ela não impede que um site envie dados (como formulários POST) para outra origem, ela apenas impede que ele leia a resposta. Para proteger contra o envio, usamos CSRF tokens.
  • Desabilitar a segurança do navegador durante o desenvolvimento (ex: --disable-web-security no Chrome) para ignorar erros de origem; resolva o problema com a configuração correta de CORS.