A política de segurança de conteúdo (CSP) é uma forma de proteger
sua página da Web limitando quais recursos e scripts podem ser carregados e
executados. É possível ativar o CSP definindo um cabeçalho Content-Security-Policy
em
respostas HTTP do servidor da Web.
Há duas maneiras padrão de configurar o CSP:
Especifique uma lista de permissões de domínios que podem injetar recursos na página.
Especifique um valor de uso único aleatório, com o qual os recursos na página precisam ser marcados para carregar. Essa abordagem é conhecida como CSP estrito.
Como os domínios usados pela Tag do editor do Google (GPT) mudam com o tempo, só oferecemos suporte ao CSP estrito (opção 2). Essa abordagem elimina a necessidade de manter uma lista contínua de domínios que podem ficar desatualizada e quebrar seu site.
Configurar o CSP com a GPT
Ative o CSP no seu servidor da Web.
Siga as etapas descritas em adotar a CSP estrita para configurar o cabeçalho CSP e aplicar o valor de uso único a cada tag de script na página, incluindo
gpt.js
. O GPT oferece suporte específico às seguintes diretivas do CSP:Content-Security-Policy: object-src 'none'; script-src 'nonce-{random}' 'unsafe-inline' 'unsafe-eval' 'strict-dynamic' https: http:; base-uri 'none'; report-uri https://your-report-collector.example.com/
Você pode escolher uma política mais permissiva se ela se adequar ao seu caso de uso. Políticas mais restritivas podem ser interrompidas sem aviso prévio.
Ative a renderização entre domínios.
Os iframes de anúncios podem carregar recursos externos que não são permitidos pelo CSP. Como os iframes do mesmo domínio herdam o CSP da janela de nível superior e o GPT não pode controlar o conteúdo do criativo, os criativos do mesmo domínio geralmente não funcionam corretamente com cabeçalhos CSP.
Para ativar a renderização entre domínios para todos os criativos, execute
googletag.pubads().setForceSafeFrame(true)
antes de carregar os slots de anúncio.<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Hello GPT</title>
<script src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" nonce="KC7tcz53FHqumKP1" async></script>
<script nonce="KC7tcz53FHqumKP1">
window.googletag = window.googletag || {cmd: []};
googletag.cmd.push(function() {
googletag.pubads().setForceSafeFrame(true);
});
</script>
</head>
Teste
Recomendamos que você teste suas políticas primeiro definindo o cabeçalho
Content-Security-Policy-Report-Only
em vez de
Content-Security-Policy
. O cabeçalho informa as violações, mas ainda permite
que elas apareçam na página.