Gerador e verificador de CSP

Digite a sua política, uma diretiva por linha ou separadas por ponto e vírgula. Você recebe o cabeçalho para copiar, uma tabela com a regra que de fato vale para scripts, estilos, imagens e outros recursos, e avisos sobre valores que enfraquecem a política.

Gratuita Funciona no seu navegador Verificada em terça-feira, 10 de novembro de 2026

Diretivas como default-src 'self'. Separe-as com ponto e vírgula ou quebra de linha. Os nomes das diretivas não diferenciam maiúsculas de minúsculas.

Modo de envio

Report-Only é o cabeçalho para testar uma política antes de impô-la. O nome do cabeçalho é o que aparece na linha de saída.

Resultado

Linha do cabeçalho — Copie-a para as configurações do seu servidor ou para a configuração de cabeçalhos do seu framework.
Verificação — Cada aviso aparece listado sob o resultado.
Linha do cabeçalho
Regra que vale, por recurso

Esta ferramenta funciona no seu navegador. O que você digita não é enviado para nós.

Como usar

  1. Digite as diretivas em Política, uma por linha, com os nomes exatamente como estão escritos, como script-src.
  2. Escolha Modo de envio: Content-Security-Policy impõe a política, e Content-Security-Policy-Report-Only é o cabeçalho para testá-la antes.
  3. Leia Regra que vale, por recurso para ver qual diretiva cobre scripts, estilos, imagens e quadros.
  4. Copie a Linha do cabeçalho para o seu servidor e corrija cada aviso listado sob o resultado.

Qual regra vale para um recurso

O navegador confere cada tipo de recurso com uma diretiva. Quando essa diretiva não existe, ele recua por uma cadeia de fallback, e a tabela mostra a cadeia seguida. As cadeias vêm do CSP Nível 3, seção 6.8.3.

  • Scripts: script-src-elem, depois script-src, depois default-src.
  • Manipuladores de evento inline: script-src-attr, depois script-src, depois default-src.
  • Folhas de estilo: style-src-elem, depois style-src, depois default-src. Os atributos de estilo inline seguem o mesmo padrão com style-src-attr.
  • Quadros: frame-src, depois child-src, depois default-src.
  • Workers: worker-src, depois child-src, depois script-src, depois default-src.
  • Imagens, fontes, mídia, objetos, manifestos e requisições fetch: a diretiva própria, depois default-src.

O que o verificador lê

As diretivas são separadas por ponto e vírgula, e esta ferramenta também aceita quebras de linha. Um nome é lido até o primeiro espaço e não diferencia maiúsculas de minúsculas. Quando uma diretiva aparece duas vezes, vale a primeira e a repetição é ignorada (CSP Nível 3, seção 2.2.1).

  • Palavras-chave como 'self' e 'none' são escritas entre aspas simples. 'none' precisa estar sozinho na sua lista.
  • Um nonce é 'nonce-' seguido de um valor base64. Um hash é sha256, sha384 ou sha512, um traço e um valor base64 (seção 2.3.1).
  • Uma vírgula não é permitida dentro do valor de uma diretiva, porque ela separa políticas no cabeçalho.

O que o verificador não faz

  • Ele não carrega a página nem testa a política em um navegador. A tabela mostra a regra que um navegador usaria, não se a sua página continua funcionando.
  • Ele confere a grafia das palavras-chave, dos nonces e dos hashes, mas não examina em detalhe as fontes de host e de esquema.
  • Ele não avalia as diretivas que não lista, como sandbox. Elas permanecem na linha do cabeçalho sem alteração.

Exemplo resolvido: a política de exemplo

Com a política de exemplo, os scripts usam script-src, porque script-src-elem não existe. Os quadros não têm frame-src nem child-src, então recuam para default-src. Os workers não têm worker-src nem child-src, então usam script-src. A diretiva style-src traz 'unsafe-inline', e o verificador informa isso como um aviso.

Recurso Verificadas em ordem Regra em uso
Scripts (elementos script) script-src-elem, script-src, default-src script-src
Quadros (iframe) frame-src, child-src, default-src default-src
Workers worker-src, child-src, script-src, default-src script-src

Perguntas frequentes

Por que a tabela mostra uma regra que eu não escrevi para os scripts?

Um recurso sem diretiva própria usa a diretiva para a qual recua. Para os scripts, são script-src-elem, depois script-src e depois default-src. A tabela mostra a regra que um navegador usaria, então um script-src ausente ainda pode dar uma regra.

O que 'unsafe-inline' permite?

Permite script ou estilo inline nos lugares que a diretiva cobre. Um nonce ou um hash na mesma lista de fontes faz os navegadores ignorarem 'unsafe-inline' (CSP Nível 3, seção 6.7.3.2), então use um deles para o código inline de que precisar.

Devo escrever report-uri ou report-to?

Use report-to. O MDN a descreve como a diretiva que substitui report-uri. Enquanto report-to não tem suporte amplo, o MDN recomenda enviar as duas, e o verificador avisa quando report-uri está presente.

Por que uma das minhas diretivas está marcada como desconhecida?

O verificador julga apenas as diretivas que os navegadores usam e que o MDN documenta. Um nome que ele não conhece permanece na linha do cabeçalho sem alteração, mas não aparece na tabela e não é julgado.

A ferramenta envia a minha política para algum lugar?

Não. O cabeçalho é montado no seu navegador. Nada do que você digita é enviado para nós nem guardado, e a política não é testada em nenhum site.

O CSP Nível 3 já é um padrão final?

Ainda não. O texto que este verificador segue é um Working Draft do W3C de 27 de outubro de 2026, um rascunho na trilha de Recomendação. Leia a versão mais recente antes de confiar em uma regra numa política de produção.

Fontes

Números e texto verificados pela última vez em terça-feira, 10 de novembro de 2026.

Usamos cookies necessários para o site funcionar. Com o seu consentimento, o Google também usa cookies de publicidade para mostrar anúncios personalizados. Se você recusá-los, continuará vendo anúncios, mas eles não serão personalizados.