Files
mintlify__docs/es/deploy/csp-configuration.mdx
mintlify[bot] 3ca550b188 Update from code changes: switch hosted docs domain to mintlify.site (#6296)
* docs: update hosted docs domain to mintlify.site

* docs: complete mintlify.site migration across remaining pages

Updates 45 files that PR 6282 had originally changed but were
reverted by PR 6285 and not re-addressed in this PR:

- snippets/vercel-json-generator.mdx (all 4 locales): rewrite
  destinations now use mintlify.site, consistent with deploy/vercel.mdx
- assistant/use.mdx: example deep-link URLs
- ai/skillmd.mdx: agent card subdomain reference
- guides/assistant-embed.mdx: docsURL code example
- guides/codex.mdx: MCP URL example
- deploy/authentication-setup.mdx: example Mintlify subdomain
- discovery-openapi.json: domain identifier URL descriptions (4 occurrences)
- integrations/privacy/osano.mdx: managed rule domain
- editor/branching-and-publishing.mdx: branch preview URL format
- customize/themes.mdx: theme demo site links
- guides/help-center.mdx: live example link
- zh/editor/collaborate.mdx: branch preview URL format

All changes mirrored across es, fr, and zh locales.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: mintlify[bot] <109931778+mintlify[bot]@users.noreply.github.com>
Co-authored-by: Ethan Palm <56270045+ethanpalm@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-26 10:51:54 -07:00

159 lines
8.6 KiB
Plaintext

---
title: "Configuración de Content Security Policy (CSP)"
sidebarTitle: "Configuración de CSP"
description: "Configura encabezados de Content Security Policy para permitir recursos de Mintlify manteniendo la seguridad en proxies inversos y redes estrictas."
keywords: ["Content Security Policy", "CSP", "directivas", "encabezados de seguridad", "cortafuegos", "prevención de XSS"]
---
Content Security Policy (CSP) es un estándar de seguridad que ayuda a prevenir ataques de cross-site scripting (XSS) controlando qué recursos puede cargar una página web. Mintlify proporciona una CSP predeterminada que protege a la mayoría de los sitios. Si alojas tu documentación detrás de un proxy inverso o un cortafuegos que sobrescribe la CSP predeterminada, puede que necesites configurar encabezados CSP para que las funciones se ejecuten correctamente.
<div id="csp-directives">
## Directivas CSP
</div>
Las siguientes directivas de CSP controlan qué recursos puede cargar una página:
- `script-src`: Controla qué scripts pueden ejecutarse
- `style-src`: Controla qué hojas de estilo pueden cargarse
- `font-src`: Controla qué fuentes pueden cargarse
- `img-src`: Controla qué imágenes, iconos y logotipos pueden cargarse
- `connect-src`: Controla a qué URL pueden conectarse para llamadas a la API y conexiones WebSocket
- `frame-src`: Controla qué URL pueden incrustarse en frames o iframes
- `default-src`: Valor predeterminado para otras directivas cuando no se establece explícitamente
<div id="domain-allowlist">
## Lista de dominios permitidos
</div>
| Dominio | Propósito | Directiva CSP | Obligatorio |
|:-------|:--------|:--------------|:-------|
| `d4tuoctqmanu0.cloudfront.net` | CSS y fuentes de KaTeX | `style-src`, `font-src` | Obligatorio |
| `*.mintlify.site` | Contenido de la documentación | `connect-src`, `frame-src` | Obligatorio |
| `*.mintlify.com` | Dashboard, API, proxy de Analytics | `connect-src` | Obligatorio |
| `leaves.mintlify.com` | API del assistant | `connect-src` | Obligatorio |
| `d3gk2c5xim1je2.cloudfront.net` | Íconos, imágenes, logotipos | `img-src` | Obligatorio |
| `d1ctpt7j8wusba.cloudfront.net` | Archivos de versiones y lanzamientos de Mint | `connect-src` | Obligatorio |
| `mintcdn.com` | Imágenes, favicons | `img-src`, `connect-src` | Obligatorio |
| `*.mintcdn.com` | Imágenes, favicons | `img-src`, `connect-src` | Obligatorio |
| `cdn.jsdelivr.net` | Recursos de emojis para imágenes OG | `script-src`, `img-src` | Obligatorio |
| `mintlify.s3.us-west-1.amazonaws.com` | Imágenes alojadas en S3 | `img-src` | Obligatorio |
| `hcaptcha.com` | Verificación CAPTCHA de hCaptcha | `script-src`, `frame-src`, `style-src`, `connect-src`, `unsafe-eval`, `unsafe-inline` | Obligatorio |
| `*.hcaptcha.com` | Verificación CAPTCHA de hCaptcha | `script-src`, `frame-src`, `style-src`, `connect-src`, `unsafe-eval`, `unsafe-inline` | Obligatorio |
| `fonts.googleapis.com` | Google Fonts | `style-src`, `font-src` | Opcional |
| `www.googletagmanager.com` | Google Analytics/Google Tag Manager (GTM) | `script-src`, `connect-src` | Opcional |
| `cdn.segment.com` | Segment Analytics | `script-src`, `connect-src` | Opcional |
| `plausible.io` | Plausible Analytics | `script-src`, `connect-src` | Opcional |
| `us.posthog.com` | PostHog Analytics | `connect-src` | Opcional |
| `tag.clearbitscripts.com` | Seguimiento de Clearbit | `script-src` | Opcional |
| `cdn.heapanalytics.com` | Heap Analytics | `script-src` | Opcional |
| `chat.cdn-plain.com` | Widget de chat de Plain | `script-src` | Opcional |
| `chat-assets.frontapp.com` | Widget de chat de Front | `script-src` | Opcional |
| `browser.sentry-cdn.com` | Seguimiento de errores con Sentry | `script-src`, `connect-src` | Opcional |
| `js.sentry-cdn.com` | SDK de JavaScript de Sentry | `script-src` | Opcional |
<div id="example-csp-configuration">
## Ejemplo de configuración de CSP
</div>
<Note>
Incluye solo los domains de los servicios que usas. Elimina cualquier domain de Analytics que no hayas configurado para tu documentación.
</Note>
```text wrap
Content-Security-Policy:
default-src 'self';
script-src 'self' 'unsafe-inline' 'unsafe-eval' cdn.jsdelivr.net www.googletagmanager.com cdn.segment.com plausible.io
us.posthog.com tag.clearbitscripts.com cdn.heapanalytics.com chat.cdn-plain.com chat-assets.frontapp.com
browser.sentry-cdn.com js.sentry-cdn.com hcaptcha.com *.hcaptcha.com;
style-src 'self' 'unsafe-inline' d4tuoctqmanu0.cloudfront.net fonts.googleapis.com hcaptcha.com *.hcaptcha.com;
font-src 'self' d4tuoctqmanu0.cloudfront.net fonts.googleapis.com;
img-src 'self' data: blob: d3gk2c5xim1je2.cloudfront.net mintcdn.com *.mintcdn.com cdn.jsdelivr.net mintlify.s3.us-west-1.amazonaws.com;
connect-src 'self' *.mintlify.site *.mintlify.com d1ctpt7j8wusba.cloudfront.net mintcdn.com *.mintcdn.com
www.googletagmanager.com cdn.segment.com plausible.io us.posthog.com browser.sentry-cdn.com hcaptcha.com *.hcaptcha.com;
frame-src 'self' *.mintlify.site hcaptcha.com *.hcaptcha.com;
```
<div id="common-configurations-by-proxy-type">
## Configuraciones comunes por tipo de proxy
</div>
La mayoría de los servidores proxy inversos permiten agregar encabezados personalizados.
<div id="cloudflare-configuration">
### Configuración de Cloudflare
</div>
Crea una regla de transformación de encabezados de respuesta:
1. En tu dashboard de Cloudflare, ve a **Rules > Overview**.
2. Selecciona **Create rule > Response Header Transform Rule**.
3. Configura la regla:
- **Modify response header**: Set static
- **Header name**: `Content-Security-Policy`
- **Header value**:
```text wrap
default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' cdn.jsdelivr.net hcaptcha.com *.hcaptcha.com; style-src 'self' 'unsafe-inline' d4tuoctqmanu0.cloudfront.net fonts.googleapis.com hcaptcha.com *.hcaptcha.com; font-src 'self' d4tuoctqmanu0.cloudfront.net fonts.googleapis.com; img-src 'self' data: blob: d3gk2c5xim1je2.cloudfront.net mintcdn.com *.mintcdn.com cdn.jsdelivr.net mintlify.s3.us-west-1.amazonaws.com; connect-src 'self' *.mintlify.site *.mintlify.com d1ctpt7j8wusba.cloudfront.net mintcdn.com *.mintcdn.com hcaptcha.com *.hcaptcha.com; frame-src 'self' *.mintlify.site hcaptcha.com *.hcaptcha.com;
```
4. Publica la regla.
<div id="aws-cloudfront-configuration">
### Configuración de AWS CloudFront
</div>
Agrega una política de encabezados de respuesta en CloudFront:
```json
{
"ResponseHeadersPolicy": {
"Name": "MintlifyCSP",
"Config": {
"SecurityHeadersConfig": {
"ContentSecurityPolicy": {
"ContentSecurityPolicy": "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' cdn.jsdelivr.net hcaptcha.com *.hcaptcha.com; style-src 'self' 'unsafe-inline' d4tuoctqmanu0.cloudfront.net fonts.googleapis.com hcaptcha.com *.hcaptcha.com; font-src 'self' d4tuoctqmanu0.cloudfront.net fonts.googleapis.com; img-src 'self' data: blob: d3gk2c5xim1je2.cloudfront.net mintcdn.com *.mintcdn.com cdn.jsdelivr.net mintlify.s3.us-west-1.amazonaws.com; connect-src 'self' *.mintlify.site *.mintlify.com d1ctpt7j8wusba.cloudfront.net mintcdn.com *.mintcdn.com hcaptcha.com *.hcaptcha.com; frame-src 'self' *.mintlify.site hcaptcha.com *.hcaptcha.com;",
"Override": true
}
}
}
}
}
```
<div id="vercel-configuration">
### Configuración de Vercel
</div>
Agrega en tu `vercel.json`:
```json
{
"headers": [
{
"source": "/(.*)",
"headers": [
{
"key": "Content-Security-Policy",
"value": "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' cdn.jsdelivr.net hcaptcha.com *.hcaptcha.com; style-src 'self' 'unsafe-inline' d4tuoctqmanu0.cloudfront.net fonts.googleapis.com hcaptcha.com *.hcaptcha.com; font-src 'self' d4tuoctqmanu0.cloudfront.net fonts.googleapis.com; img-src 'self' data: blob: d3gk2c5xim1je2.cloudfront.net mintcdn.com *.mintcdn.com cdn.jsdelivr.net mintlify.s3.us-west-1.amazonaws.com; connect-src 'self' *.mintlify.site *.mintlify.com d1ctpt7j8wusba.cloudfront.net mintcdn.com *.mintcdn.com hcaptcha.com *.hcaptcha.com; frame-src 'self' *.mintlify.site hcaptcha.com *.hcaptcha.com;"
}
]
}
]
}
```
<div id="troubleshooting">
## Solución de problemas
</div>
Identifica infracciones de la CSP en la consola de tu navegador:
1. Abre las herramientas de desarrollador de tu navegador.
2. Ve a la pestaña **Console**.
3. Busca errores que empiecen por:
- `Content Security Policy: The page's settings blocked the loading of a resource`
- `Refused to load the script/stylesheet because it violates the following Content Security Policy directive`
- `Refused to connect to because it violates the following Content Security Policy directive`