HttpOnly-cookie
HttpOnly voorkomt directe cookietoegang door paginascripts. Passende verzoeken kunnen de cookie nog meesturen; sessie en rechten vereisen nog controle.
De cookiewaarde afschermen van paginascripts
Een cookie met het attribuut HttpOnly is voor paginascripts niet toegankelijk via document.cookie. De server stelt het attribuut in met de antwoordheader Set-Cookie. Bij een sessie-identificatie beperkt dit het uitlezen door geïnjecteerde JavaScript-code. Het voorkomt niet dat zo’n script wordt uitgevoerd.
Sessie-identificatie en weergavegegevens scheiden
Een fictief projectportaal bewaart zijn sessie-identificatie in de cookie sessionId. Voor de begroeting heeft de interface alleen de weergavenaam nodig. De geplande profielaanvraag geeft na sessie- en rechtencontrole op de server displayName terug; de frontend hoeft daarvoor de sessie-identificatie niet te lezen.
De browser kan een HttpOnly-cookie nog automatisch toevoegen aan passende verzoeken, ook als deze met fetch() zijn gestart. De overige cookievoorwaarden blijven gelden. Een geïnjecteerd script zou daardoor soms binnen de aangemelde sessie acties kunnen uitvoeren zonder de cookiewaarde te kennen. Bescherming tegen XSS en CSRF en rechtencontrole op de server blijven nodig.
Het afzonderlijke attribuut Secure beperkt verzending tot HTTPS; SameSite beïnvloedt meesturen bij verzoeken tussen sites. Deze eigenschappen hebben verschillende taken.
Bronnen
Verwante begrippen
- SameSite-cookieSameSite beïnvloedt meesturen van cookies bij verzoeken tussen sites. De keuze moet passen bij aanmelden en navigatie; CSRF-bescherming blijft nodig.
- Cross-site scripting (XSS)Bij XSS wordt externe inhoud uitvoerbare code in de browser. Doorslaggevend is hoe een applicatie invoer in haar pagina’s opneemt.
- Cross-site request forgery (CSRF)CSRF misbruikt een aangemelde sessie voor een ongewenst verzoek. De sessiecookie alleen bewijst niet dat de gebruiker de handeling bedoelde.
- DataminimalisatieDataminimalisatie beperkt persoonsgegevens tot wat passend, relevant en noodzakelijk is voor een bepaald doel.
- Bewaarbeleid voor gegevensEen bewaarbeleid bepaalt doel, begin, duur en einde van opslag. Verwijderingstaken en kopieën moeten technisch worden meegenomen.
- EnvelopversleutelingEnvelopversleuteling scheidt de gegevenssleutel van de sleutel die deze beschermt. Versleuteld bestand en verpakte gegevenssleutel horen bij elkaar.
Uw project met ASES
Beschrijf ons uw project. We nemen contact met u op met een eerste inschatting.