CSP predeterminada
Content-Security-Policy de cada página de los sitios de documentación alojados:
frame-ancestors y form-action, que controlan dónde se puede incrustar tu sitio y a dónde pueden enviarse los formularios. De forma predeterminada, estas directivas son:
frame-ancestors predeterminada impide que otros dominios incrusten tu sitio en un iframe. Para incrustar tu documentación en tu propia aplicación, consulta El sitio de documentación no se carga en un iframe.
La política predeterminada permite recursos de cualquier origen HTTPS, por lo que la mayoría de los scripts personalizados, elementos incrustados, fuentes y herramientas de analítica funcionan sin cambios. Los navegadores bloquean los recursos que la política no permite:
- Recursos HTTP: Los scripts, estilos, fuentes y otros recursos deben cargarse a través de HTTPS. Los navegadores bloquean las conexiones a URL HTTP sin cifrar, incluidos los servidores de desarrollo locales como
http://localhost:8545. - Scripts blob y data: Los navegadores bloquean los scripts cargados desde URL
blob:odata:. Algunos cargadores de etiquetas de terceros usan este patrón. - Plugins: Los navegadores bloquean los elementos
<object>y<embed>. - Workers de origen cruzado: Los web workers deben cargarse desde tu dominio de documentación o desde una URL
blob:.
blob:.
Directivas CSP
script-src: Controla qué scripts pueden ejecutarsestyle-src: Controla qué hojas de estilo pueden cargarsefont-src: Controla qué fuentes pueden cargarseimg-src: Controla qué imágenes, iconos y logotipos pueden cargarseconnect-src: Controla a qué URL pueden conectarse para llamadas a la API y conexiones WebSocketframe-src: Controla qué URL pueden incrustarse en frames o iframesdefault-src: Valor predeterminado para otras directivas cuando no se establece explícitamente
Lista de dominios permitidos
Ejemplo de configuración de CSP
Incluye solo los domains de los servicios que usas. Elimina cualquier domain de Analytics que no hayas configurado para tu documentación.
Configuraciones comunes por tipo de proxy
Configuración de Cloudflare
- En tu dashboard de Cloudflare, ve a Rules > Overview.
- Selecciona Create rule > Response Header Transform Rule.
- Configura la regla:
- Modify response header: Set static
- Header name:
Content-Security-Policy - Header value:
- Header name:
- Publica la regla.
Configuración de AWS CloudFront
Configuración de Vercel
vercel.json:
Solución de problemas
- Abre las herramientas de desarrollador de tu navegador.
- Ve a la pestaña Console.
- Busca errores que empiecen por:
Content Security Policy: The page's settings blocked the loading of a resourceRefused to load the script/stylesheet because it violates the following Content Security Policy directiveRefused to connect to because it violates the following Content Security Policy directive