Securitywarn by defaultrecommended preset
astro-doctor/no-disabled-origin-checkno-disabled-origin-check
Keep Astro's built-in CSRF origin check enabled.
Why
Astro checks the Origin header for on-demand rendered pages to help prevent cross-site request forgery. Setting security.checkOrigin to false removes that protection from form submissions and other state-changing requests unless the application supplies an equivalent defense.
Examples
Incorrect
Origin checking disabled
import { defineConfig } from 'astro/config'
export default defineConfig({
security: {
checkOrigin: false,
},
})Correct
Use Astro's secure default
import { defineConfig } from 'astro/config'
export default defineConfig({
security: {
checkOrigin: true,
},
})Configuration
Project audits are configured in doctor.config.ts:
export default {
rules: {
'astro-doctor/no-disabled-origin-check': 'error', // or 'warn' or 'off'
},
}All rules
astro-doctor/no-client-load-overuseastro-doctor/use-astro-imageastro-doctor/require-image-dimensionsastro-doctor/no-missing-altastro-doctor/no-set-htmlastro-doctor/no-public-secret-envastro-doctor/prefer-class-listastro-doctor/no-blocking-scriptastro-doctor/no-unprocessed-script-surprisesastro-doctor/no-missing-langastro-doctor/require-island-fallbackastro-doctor/no-process-envastro-doctor/prefer-content-collectionsastro-doctor/no-disabled-origin-check(this page)astro-doctor/no-insecure-session-cookieastro-doctor/no-open-allowed-domainsastro-doctor/prefer-env-schemaastro-doctor/prefer-pnpmastro-doctor/require-action-input-schemaastro-doctor/require-client-router-script-lifecycleastro-doctor/require-content-config