Access-Control-Allow-Origin (CORS)
Bepaalt welke andere origins deze response via JavaScript mogen uitlezen — verkeerd ingesteld lekt data.
Wat doet hij?
CORS-headers vertellen de browser welke cross-origin JavaScript-aanvragen zijn toegestaan om de response te lézen (het request zelf wordt vaak al uitgevoerd; CORS bepaalt of het antwoord zichtbaar is voor de aanroepende pagina). Access-Control-Allow-Origin: * staat dat aan iedereen toe; een specifieke origin beperkt het tot die ene site.
Waarom telt hij mee?
Een wildcard-origin gecombineerd met Access-Control-Allow-Credentials: true is een kritieke misconfiguratie: elke site zou dan cookies en sessiegegevens van ingelogde gebruikers kunnen uitlezen. Specificatie en browsers weigeren die exacte combinatie, maar servers die hem toch versturen lopen alsnog risico zodra een browser minder strikt is of het via een proxy anders wordt samengevoegd.
Aanbevolen waarde
Access-Control-Allow-Origin: https://vertrouwde-origin.example (nooit * samen met credentials)Veelgemaakte fout
Access-Control-Allow-Origin: * toevoegen om een CORS-foutmelding tijdens development snel weg te werken, en die instelling per ongeluk mee laten naar productie op een endpoint dat wél gevoelige of gepersonaliseerde data teruggeeft.
Configuratievoorbeelden
Kant-en-klare snippet om Access-Control-Allow-Origin in te stellen, per platform.
Placeholder-origin — vervang deze door de daadwerkelijke, vertrouwde origin(s) die toegang nodig hebben. Nooit * combineren met credentials.
add_header Access-Control-Allow-Origin "https://jouw-vertrouwde-origin.example" always;
Check Access-Control-Allow-Origin op jouw domein
Voer een domein in en zie direct of deze header aanwezig is en goed is ingesteld.