Iubenda logo
Genera tus documentos

Documentación

Tabla de contenidos

Cómo configurar tu Política de seguridad del contenido para iubenda

Esta guía está dirigida a administradores de sitios web que utilizan una Política de seguridad del contenido (CSP) en su web.

La política de seguridad del contenido permite a los administradores especificar qué dominios debe considerar el navegador como fuentes válidas de scripts ejecutables: un navegador compatible con CSP solo ejecutará scripts de dominios autorizados, ignorando todos los demás scripts.

Como puedes imaginar, esto puede causar algunos problemas con los scripts de nuestros Términos y Condiciones, Política de Privacidad y Cookies, Cookie Solution y Consent Solution. Afortunadamente, estos problemas se resuelven fácilmente.

Cómo resolver los conflictos entre CSP e iubenda

A continuación, te indicamos cómo autorizar scripts de nuestros Términos y Condiciones, Política de Privacidad y Cookies, Cookie Solution y Consent Solution para que puedan funcionar correctamente con tu CSP:

1. Agrega un nonce a los scripts en línea

En primer lugar, deberás utilizar un nonce criptográfico (número aleatorio que se usará solo una vez), dando a la etiqueta de script de iubenda un atributo nonce. El valor del nonce debe coincidir con uno de la lista de fuentes fiables. Por ejemplo:

<script type="text/javascript" nonce="EDNnf03nceIOfn39fn3e9h3sdfa">
  //iubenda snippet
</script>

Ahora, agrega el nonce a tu directiva script-src asociada con la palabra clave nonce-:

Content-Security-Policy: script-src 'nonce-EDNnf03nceIOfn39fn3e9h3sdfa'

Entonces, por ejemplo, en el caso de la Cookie Solution, la implementación se verá así:

<script type="text/javascript" nonce="EDNnf03nceIOfn39fn3e9h3sdfa">
    var _iub = _iub || [];
    _iub.csConfiguration = {
        "lang": "en",
        "siteId": 12345678
        "cookiePolicyId": 12345678
        "banner": {
            "position": "float-top-center",
            "acceptButtonDisplay": true,
            "customizeButtonDisplay": true
        }
    };
</script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async></script>

Ten en cuenta que el nonce se ha agregado solo al script en línea. A continuación vamos a ver cómo manejar los scripts externos.

Importante

Recuerda que los nonces se deben regenerar cada vez que se cargue la página y que no debe ser posible predecirlos.

2. Autoriza el dominio de iubenda para scripts externos

Ahora tienes que autorizar el contenido del dominio y subdominios de iubenda para que los scripts externos se puedan cargar desde allí. A continuación, se explica cómo configurar la Política de seguridad del contenido:

Content-Security-Policy: 
  default-src 'self'; 
  script-src 'self' *.iubenda.com 'nonce-EDNnf03nceIOfn39fn3e9h3sdfa' 'unsafe-eval'; 
  connect-src *.iubenda.com; 
  style-src 'unsafe-inline' *.iubenda.com; 
  frame-src *.iubenda.com *.consensu.org; 
  img-src *.iubenda.com data:

Y esto es todo. Puedes encontrar más información sobre CSP y los casos de uso más comunes en MDN Web Docs.