Samenvatting
In dit artikel lees je welke securityheaders je per website kunt instellen. Je vindt per header de waarden die het scherm aanbiedt.
Je leest ook wat er gebeurt als je niets kiest, en wanneer je keuze op de website terechtkomt.
Verder lees je wat er misgaat bij een te strenge instelling.
Wanneer gebruik je dit?
Je gebruikt dit als je de beveiliging van de gepubliceerde website wilt aanscherpen.
Je gebruikt het ook als een externe partij om een bepaalde header vraagt, bijvoorbeeld na een beveiligingsonderzoek.
Weet je niet wat een header doet, laat de velden dan staan zoals ze staan. De website werkt dan gewoon.
Hoe werkt dit in Mach3Blocks?
Waar de velden staan
Open de pop-in Website-instellingen en ga naar het tabblad Geavanceerd. De zes velden staan daar onder elkaar.
De veldnamen zijn de headernamen zelf. Die worden niet vertaald, dus zij zijn in elke taal gelijk.
Onder elk veld staat een link met de tekst "Klik hier voor meer informatie". Die verwijst naar een uitleg bij Mozilla, in het Engels.
Wat een standaardwaarde betekent
Vijf velden zijn een keuzelijst. De eerste regel van zo'n lijst toont de standaard tussen haakjes.
Die standaardwaarde geeft de server zelf al mee aan je website. Kies je niets, dan gebeurt er precies dat.
Staat er Standaard (none), dan geeft de server voor die header niets mee.
Wanneer je keuze meegaat
Je keuze komt op de website bij de eerstvolgende publicatie. Tot dat moment verandert er niets voor de bezoeker.
Alleen de headers die je zelf kiest, worden bewaard en meegepubliceerd. Kies je nergens iets, dan wordt er niets meegegeven.
Bij een website in een presentatiegroep bestaat dit tabblad niet. Kopieer je een website naar zo'n groep, dan vervalt je keuze.
Overzichtstabel met opties, waarden en standaard
| Header | Waarden die het veld aanbiedt | Standaard die het veld toont |
|---|---|---|
| Referrer-Policy | no-referrer, origin, origin-when-cross-origin, same-origin, strict-origin, strict-origin-when-cross-origin, unsafe-url | Standaard (same-origin) |
| X-Content-Type-Options | nosniff | Standaard (nosniff) |
| X-Frame-Options | DENY, SAMEORIGIN | Standaard (none) |
| X-XSS-Protection | 0, 1, 1; mode=block | Standaard (1; mode=block) |
| Strict-Transport-Security | max-age=0, max-age=31536000, max-age=31536000; includeSubDomains, max-age=31536000; includeSubDomains; preload | Standaard (none) |
| Content-Security-Policy | een vrij tekstveld van hoogstens 500 tekens | geen standaardtekst |
Wat de zes headers doen:
| Header | Wat hij regelt |
|---|---|
| Referrer-Policy | Hoeveel de browser over de vorige pagina doorgeeft aan een volgende website |
| X-Content-Type-Options | Dat de browser een bestand behandelt zoals het is aangeboden, en er niet zelf een type bij verzint |
| X-Frame-Options | Of jouw pagina's in een frame op een andere website getoond mogen worden |
| X-XSS-Protection | Een oude filter in de browser tegen bepaalde aanvallen |
| Strict-Transport-Security | Dat de browser deze website voortaan alleen nog beveiligd opvraagt |
| Content-Security-Policy | Welke bronnen jouw pagina's mogen laden, zoals scripts en afbeeldingen |
Het veld Content-Security-Policy is het enige vrije tekstveld. Het neemt hoogstens 500 tekens aan.
Dat veld accepteert niet elk teken. Bevat je waarde een teken dat niet is toegestaan, dan meldt het scherm: "Dit veld bevat tekens die niet zijn toegestaan."
Aanbevolen instelling
Voor drie headers hoef je niets te doen. De server geeft ze al mee, dus laat die keuzelijsten met rust.
| Header | Wat de server al meegeeft |
|---|---|
| Referrer-Policy | same-origin |
| X-Content-Type-Options | nosniff |
| X-XSS-Protection | 1; mode=block |
Bij X-XSS-Protection kies je niets. De standaard staat er al, en een andere waarde is hier niet nodig.
Twee headers hebben geen standaard, en daar is dus wel iets te kiezen.
| Header | Keuze | Wat die keuze doet |
|---|---|---|
| X-Frame-Options | SAMEORIGIN | Alleen je eigen website mag jouw pagina's in een frame tonen |
| Strict-Transport-Security | max-age=31536000 | De browser vraagt deze website een jaar lang alleen beveiligd op |
Voor Content-Security-Policy is geen algemene waarde te geven. Wat je hier invult, hangt af van wat jouw website laadt.
Voorwaarden en rechten
Voor deze velden is geen recht nodig. Wie de website-instellingen kan openen, kan de headers kiezen.
Voor het publiceren heb je het recht Publiceren nodig.
Bij een website in een presentatiegroep is dit tabblad er niet.
Gevolgen bij verkeerd instellen
Een te strenge waarde blokkeert onderdelen van je eigen website. Dat merk je pas op de gepubliceerde website, dus controleer na het publiceren.
Bij Content-Security-Policy is dat risico het grootst. Vergeet je een bron die je website nodig heeft, dan laadt die bron niet meer.
Kies je bij X-Frame-Options de strengste waarde, dan kan niemand jouw pagina's nog in een frame tonen. Ook jijzelf niet, bijvoorbeeld in een voorbeeldweergave elders.
Zet je Strict-Transport-Security aan, dan onthoudt de browser dat een tijd lang. Dat draai je niet zomaar terug bij een bezoeker die de website al bezocht heeft.
Twijfel je, laat de keuzelijst dan op de standaard staan.