# CSP Hardening: `unsafe-inline` и `unsafe-eval` в Caddyfile **Контекст**: В `deploy/Caddyfile:40` Content-Security-Policy использует `'unsafe-inline'` и `'unsafe-eval'` для script-src. Это ослабляет XSS-защиту. ## Текущая политика ``` Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https://*.basemaps.cartocdn.com; font-src 'self' data:; connect-src 'self' wss: https://api.{$DOMAIN}; frame-ancestors 'none'; ``` ## Почему так 1. **`'unsafe-inline'` для скриптов**: Next.js использует inline-скрипты для гидратации и данных страницы (`__NEXT_DATA__`, `__NEXT_LOADED_PAGES__` и т.д.) 2. **`'unsafe-eval'`**: Нужен для source maps в development. Next.js 14 также может использовать `eval()` для некоторых динамических импортов и Webpack HMR. 3. **`'unsafe-inline'` для стилей**: Tailwind CSS использует JIT-генерацию стилей, которые вставляются через `