Seguro por defecto
La configuración predeterminada del tema obtiene una calificación de A+ en Mozilla Observatory.[1]
Esto se logra configurando programáticamente las cabeceras de la Política de Seguridad de Contenido (CSP) en función de una lista de dominios permitidos definida por el usuario en el archivo config.toml
. Aquí tienes la configuración predeterminada y recomendada (puedes eliminar la última directiva si no deseas insertar videos de YouTube):
[]
= [
{ = "font-src", = ["'self'", "data:"] },
{ = "img-src", = ["'self'", "https://*", "data:"] },
{ = "script-src", = ["'self'"] },
{ = "style-src", = ["'self'"] },
{ = "frame-src", = ["https://www.youtube-nocookie.com"] },
]
La lista allowed_domains
especifica las URL a las que el sitio web debería poder conectarse, y cada dominio de la lista se asocia con una directiva CSP como frame-src
, connect-src
o script-src
. El archivo templates/partials/header.html
genera dinámicamente la cabecera CSP en función de esta lista.
Esta función permite personalizar fácilmente las cabeceras de seguridad del sitio web para permitir casos de uso específicos, como la incrustación de videos de YouTube, la carga de scripts o fuentes remotas (no recomendado).
Puedes desactivar las cabeceras (permitiendo todo) en una página, sección, o globalmente configurando enable_csp = false
en el front matter o en el archivo config.toml
.
Notas:
Habilitar los comentarios, las analíticas, o los diagramas mermaid permite automáticamente los scripts/frames/estilos/conexiones pertinentes.
Para usar un tema de resaltado de sintaxis integrado en Zola, has de permitir
unsafe-inline
en la directivastyle-src
:{ directive = "style-src", domains = ["'self'", "'unsafe-inline'"] },
Requiere una configuración adecuada del servidor web (por ejemplo, redirigir el tráfico HTTP a HTTPS). ↩