Beveiligingsheaders: welke moet je zetten
Een browser vertrouwt een site niet omdat er een slotje in zit, maar omdat de response zegt wat er mag: welke versies, welke scripts, welke cookies, hoe lang een naam onthouden mag worden. Dat zegt je site zelf — in de headers. Een header die ontbreekt is geen stijl, het is stilzwijgen, en wat stilzwijgt, vult de browser in naar eigen regels.
Dit artikel loopt de headers af die ertoe doen, wat ze doen en wat er van hen verwacht mag worden. Daarna is het één vraag: zet mijn site ze, en waar in de keten? Die vraag meet de HTTP-headers-tool — hop voor hop, inclusief wat een CDN of proxy eigenhandig bijzet.
HSTS: de naam die je niet meer mag vergeten
`Strict-Transport-Security` zegt een browser: bezoek deze naam voortaan alleen via HTTPS. Zonder `includeSubDomains` geldt het alleen voor de naam zelf — subdomeinen blijven apart te bezoeken — en zonder preload-notatie is het een verzoek, geen regel. HSTS is de eerste header die de adreslaag dicht: zonder hem is één typo of één HTTP-aanbod genoeg om buiten de veilige keten te komen.
CSP: wat er in de pagina uitvoeren mag
Content-Security-Policy beperkt welke scripts, stijlen en beelden een pagina laden mag — de rem op third-party materiaal en ingebroken code. Een CSP is moeilijk goed te zetten zonder je eigen pagina te kennen; begin bij wat je pagina nu doet en verbreed van daaruit. De header is meetbaar (hij staat of staat niet, en wat er staat is tekst); of hij slim genoeg is voor jouw pagina, beoordeelt geen scanner ter wereld — dus ook onze website-scan claimt dat niet.
Referrer-Policy, X-Content-Type-Options, cookies
Referrer-Policy bepaalt wat een site aan een volgende site doorgeeft over waar hij vandaan kwam. `X-Content-Type-Options: nosniff` verbiedt een browser om bestandssoorten te raden. En cookies met `Secure`, `HttpOnly` en `SameSite` zijn geen headers van de origin zelf maar wel gemeten materiaal in dezelfde response. De HTTP-headers-tool toont ze, met de tekortlijst die alleen gemeten afwezigheden noemt.
Waar in de keten zet je het?
Wie achter een CDN, load balancer of hostinglaag staat, ziet soms headers verschijnen die hij nooit schreef — of verdwijnen die hij wel schreef. Meten op het publieke adres is daarom iets anders: de redirect-keten in de headers-tool maakt zichtbaar wáár de response verandert. Zet je beleid op de origin en controleer op het adres wat eruit rolde; TLS: wat is er nog open is de zuster-vraag aan de verbinding-kant.