Gå til indholdet

HttpOnly-cookie

HttpOnly hindrer scripts i direkte at tilgå cookien. Passende anmodninger kan stadig sende den; session og rettigheder skal fortsat kontrolleres.

IT-sikkerhed

Afskærm cookieværdien fra sidens scripts

En cookie med attributten HttpOnly er ikke tilgængelig for sidens scripts via document.cookie. Serveren sætter attributten i svarheaderen Set-Cookie. For en sessionsidentifikator begrænser det udlæsning gennem injiceret JavaScript. Det forhindrer ikke selve scriptets kørsel.

Adskil sessionsidentifikator og visningsdata

En fiktiv projektportal gemmer sin sessionsidentifikator i cookien sessionId. Til velkomsten behøver grænsefladen kun visningsnavnet. Det planlagte profilkald returnerer displayName efter kontrol af session og rettigheder på serveren; frontend behøver ikke læse sessionsidentifikatoren.

Browseren kan stadig automatisk vedhæfte en HttpOnly-cookie til passende anmodninger, også dem der startes med fetch(). De øvrige cookiebetingelser gælder fortsat. Et injiceret script kunne derfor under visse omstændigheder udføre handlinger i den indloggede session uden at kende cookieværdien. Beskyttelse mod XSS og CSRF samt serverens rettighedskontrol er fortsat nødvendig.

Den særskilte attribut Secure begrænser afsendelsen til HTTPS; SameSite påvirker afsendelse ved anmodninger mellem sites. Egenskaberne har forskellige opgaver.

Kilder