Integrar com uma Política de Segurança de Conteúdo

A Política de Segurança de Conteúdo (CSP) é uma forma de proteger sua página da Web limitando os recursos e scripts que podem carregar e a serem executados. É possível ativar a CSP definindo um cabeçalho Content-Security-Policy em Respostas HTTP do seu servidor da Web.

Há duas maneiras padrão de configurar o CSP:

  1. Especificar uma lista de permissões de domínios que podem injetar seus recursos na página.

  2. Especifique um valor de uso único aleatório, com em que os recursos na página precisam ser marcados para carregar. Essa abordagem é conhecida como CSP rigorosa.

Como os domínios que a Tag do editor do Google (GPT) usa mudam ao longo No momento, só aceitamos CSPs rigorosas (opção 2). Essa abordagem elimina a necessidade manter uma lista contínua de domínios que podem ficar desatualizados e corromper seus site.

Como configurar a CSP com GPT

  1. Ativar a CSP no seu servidor da Web.

    Siga as etapas descritas em Como adotar uma CSP rigorosa para: configure o cabeçalho da CSP e aplique esse valor a cada tag de script na sua página, incluindo gpt.js. A GPT é compatível especificamente com os seguintes Diretivas da 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/
    

    É possível escolher uma política mais abrangente, se necessário. Mais políticas restritivas podem ser interrompidas sem aviso prévio.

  2. Ativar a renderização em vários domínios.

    Os iframes de anúncios podem carregar recursos externos que talvez não sejam permitidos pelo CSP. Como os iframes do mesmo domínio herdam a CSP da janela de nível superior, e A GPT não controla o conteúdo do criativo, mesmo domínio os criativos geralmente não funcionam adequadamente com cabeçalhos CSP.

    Para ativar a renderização em vários domínios para todos os criativos, execute googletag.pubads().setForceSafeFrame(true) antes de carregar espaços 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 configurando cabeçalho Content-Security-Policy-Report-Only em vez de Content-Security-Policy. O cabeçalho informa violações, mas ainda permite na página.