Skip to main content

Evästetyypit: kattava tekninen opas

Kaikki evästeet eivät ole samanlaisia. Evästeen tyyppi määrää, kuinka kauan se säilyy, kuka voi lukea sen, kuinka turvallisesti se liikkuu ja — mikä tärkeintä — vaatiiko se käyttäjän suostumuksen. Näiden erojen ymmärtäminen on olennaista sekä vaatimustenmukaisuuden että teknisen toteutuksen kannalta.

Istuntoevästeet vs. pysyvät evästeet

Perustavin ero liittyy siihen, kuinka kauan eväste säilyy.

Istuntoevästeet

Istuntoeväste on olemassa vain selainistunnon ajan. Sillä ei ole Expires- tai Max-Age-attribuuttia. Kun käyttäjä sulkee selaimensa, eväste poistetaan.

Set-Cookie: cart_id=xyz789; Path=/; Secure; HttpOnly

Istuntoevästeitä käytetään tyypillisesti seuraaviin:

  • Kirjautumistilan ylläpitäminen käynnin aikana
  • Ostoskorin sisältö
  • CSRF-suojauksen tunnisteet
  • Monivaiheisten lomakkeiden tiedot

Koska istuntoevästeet eivät säily, ne ovat tietosuojan näkökulmasta yleensä vähemmän tunkeilevia. Niihin vaaditaan kuitenkin edelleen suostumus, elleivät ne ole ehdottoman välttämättömiä käyttäjän pyytämän palvelun kannalta.

Pysyvät evästeet

Pysyvällä evästeellä on nimenomainen vanhenemispäivä. Se säilyy selaimen uudelleenkäynnistysten yli ja pysyy käyttäjän laitteessa, kunnes se vanhenee tai poistetaan manuaalisesti.

Set-Cookie: preferences_lang=en; Path=/; Max-Age=31536000; Secure

Tämä eväste säilyy yhden vuoden ajan (31 536 000 sekuntia). Yleisiä käyttötarkoituksia ovat:

  • "Muista minut" -kirjautumistoiminto
  • Kieli- ja teema-asetukset
  • Analytiikkatunnisteet (Google Analyticsin evästeet säilyvät jopa 2 vuotta)
  • Mainonnan seuranta (osa mainosevästeistä säilyy 13 kuukautta tai kauemmin)

Pysyvät evästeet ovat tietosuojasääntelyn tarkemman valvonnan kohteena. CNIL (Ranskan tietosuojaviranomainen) on suositellut enimmillään 13 kuukauden evästeikää, ja myös suostumus on uusittava vähintään 13 kuukauden välein.

Ensimmäisen osapuolen vs. kolmannen osapuolen evästeet

Tämä ero on tietosuojakeskustelun ytimessä ja vaikuttaa suoraan suostumusvaatimuksiin.

Ensimmäisen osapuolen evästeet

Ensimmäisen osapuolen evästeen asettaa se verkkotunnus, jolla käyttäjä varsinaisesti vierailee. Jos vierailet osoitteessa example.com, mikä tahansa example.com-domainin asettama eväste on ensimmäisen osapuolen eväste.

Ensimmäisen osapuolen evästeitä käytetään verkkosivuston keskeisiin toimintoihin: istuntoihin, asetuksiin ja analytiikkaan, jonka sivuston ylläpitäjä hoitaa itse. Vain evästeen asettanut verkkotunnus voi lukea niitä.

Esimerkki: Vierailet osoitteessa shop.example.com. Palvelin asettaa evästeen nimeltä session_id. Tämä eväste lähetetään vain osoitteeseen shop.example.com ja sen aliverkkotunnuksiin. Mikään muu verkkosivusto ei pääse siihen käsiksi.

Kolmannen osapuolen evästeet

Kolmannen osapuolen evästeen asettaa jokin muu verkkotunnus kuin se, jolla käyttäjä vierailee. Kun example.com lataa mainontaskriptin osoitteesta ads.tracker.com ja tuo skripti asettaa evästeen tracker.com-domainin alle, kyseessä on kolmannen osapuolen eväste.

Näin sivustojen välinen seuranta toimii. tracker.com-eväste lähetetään jokaisen tracker.com-pyynnön mukana riippumatta siitä, mikä verkkosivusto pyynnön käynnisti. Jos tracker.com-skriptejä on upotettu 10 000 verkkosivustolle, ne voivat seurata samaa käyttäjää kaikilla 10 000 sivustolla.

Kolmannen osapuolen evästeet ovat sekä sääntelyn valvonnan että selaintason rajoitusten ensisijainen kohde:

  • Safari on estänyt kolmannen osapuolen evästeet oletuksena vuodesta 2020 (ITP)
  • Firefox estää oletuksena tunnetut kolmannen osapuolen seurantatunnisteet (ETP)
  • Chrome siirtyy pois kolmannen osapuolen evästeistä Privacy Sandbox -hankkeensa myötä
  • Sääntelyn valvontatoimet kohdistuvat ylivoimaisesti kolmannen osapuolen seurantaevästeisiin

Secure-evästeet

Eväste, jossa on Secure-attribuutti, lähetetään vain HTTPS-yhteyksien kautta. Sitä ei koskaan siirretä salaamattoman HTTP:n välityksellä.

Set-Cookie: auth_token=secret123; Secure

Tämä estää välikäsihyökkääjää (man-in-the-middle) sieppaamasta evästettä suojaamattoman yhteyden kautta. Jokaisen evästeen, joka sisältää arkaluonteista tietoa — istuntotunnisteet, todennustunnisteet, henkilötiedot — tulisi aina olla merkitty Secure-attribuutilla.

Vaatimustenmukaisuuden näkökulmasta Secure-lipun käyttämättä jättämistä arkaluonteisissa evästeissä voidaan pitää GDPR:n 32 artiklan (käsittelyn turvallisuus) mukaisten asianmukaisten teknisten toimenpiteiden laiminlyöntinä.

HttpOnly-evästeet

Evästettä, jossa on HttpOnly-attribuutti, ei voi käyttää JavaScriptin kautta document.cookie-komennolla. Se lähetetään vain HTTP-pyyntöjen mukana palvelimelle.

Set-Cookie: session_id=abc123; HttpOnly

Tämä on kriittinen turvatoimi. Cross-site scripting (XSS) -hyökkäyksissä yritetään usein varastaa evästeitä injektoimalla JavaScript-koodia, joka lukee document.cookie-arvon. HttpOnly-lippu estää tämän hyökkäysvektorin kokonaan.

Istunto- ja todennusevästeiden tulisi lähes aina olla HttpOnly. Evästeet, jotka asiakaspuolen JavaScriptin täytyy pystyä lukemaan (kuten käyttöliittymään vaikuttavat asetusevästeet), eivät voi olla HttpOnly.

SameSite-evästeet

SameSite-attribuutti määrää, lähetetäänkö eväste sivustojen välisten pyyntöjen mukana. Se otettiin käyttöön lieventämään cross-site request forgery (CSRF) -hyökkäyksiä ja antamaan sivustoille enemmän hallintaa sivustojen välisten evästeiden toiminnasta.

SameSite=Strict

Eväste lähetetään vain samalta sivustolta peräisin olevien pyyntöjen mukana. Jos käyttäjä napsauttaa osoitteessa other.com olevaa linkkiä, joka johtaa osoitteeseen your-site.com, evästettä ei lähetetä tämän ensimmäisen pyynnön mukana.

Tämä on turvallisin asetus, mutta se voi rikkoa oikeutettuja toimintoja. Jos käyttäjä esimerkiksi napsauttaa sivustollesi vievää linkkiä sähköpostissa, hänen istuntoevästettään ei lähetettäisi, jolloin hän näyttäisi olevan kirjautuneena ulos.

SameSite=Lax

Eväste lähetetään ylätason navigaatioiden mukana (linkin napsauttaminen) mutta ei sivustojen välisten alipyyntöjen mukana (kuvien tai kehysten lataaminen tai AJAX-pyyntöjen tekeminen toiselta sivustolta). Tämä on nykyaikaisten selainten oletusarvo, jos SameSite-attribuuttia ei ole määritetty.

Lax tarjoaa kohtuullisen tasapainon turvallisuuden ja käytettävyyden välillä. Se estää kolmannen osapuolen sivustoja käynnistämästä todennettuja toimintoja sivustollasi ja sallii silti normaalin linkkinavigaation toimimisen.

SameSite=None

Eväste lähetetään kaikkien pyyntöjen mukana, mukaan lukien sivustojen väliset pyynnöt. Tämä vaaditaan, jotta kolmannen osapuolen evästeet toimivat. SameSite=None-arvolla asetetulla evästeellä on oltava myös Secure-attribuutti.

Set-Cookie: tracking_id=xyz; SameSite=None; Secure

Jokaisen evästeen, jonka on toimittava sivustojen välisessä kontekstissa (upotetut widgetit, kolmannen osapuolen todennus, sivustojen välinen seuranta), on käytettävä SameSite=None-arvoa. Tämä on yhä tärkeämpää, kun selaimet tiukentavat oletusarvoisia evästekäytäntöjään.

Zombie-evästeet ja superevästeet

Nämä ansaitsevat maininnan, koska ne edustavat yrityksiä kiertää tietosuojahallintaa:

  • Zombie-evästeet ovat evästeitä, jotka luovat itsensä uudelleen poistamisen jälkeen. Ne toimivat tyypillisesti tallentamalla saman tunnisteen useisiin tallennusmekanismeihin (evästeet, localStorage, IndexedDB, Flash LSO:t) ja käyttämällä eloonjäänyttä muiden uudelleenluomiseen. Tätä käytäntöä pidetään yleisesti harhaanjohtavana, ja se on ollut valvontatoimien kohteena.
  • Superevästeet ovat seurantamekanismeja, jotka toimivat normaalien evästeiden alapuolella olevalla tasolla — kuten ISP-tason otsakeinjektio (Verizonin UIDH) tai HSTS-pohjainen sormenjälki. Niitä on käyttäjien erittäin vaikea hallita tai poistaa.

Sekä zombie-evästeet että superevästeet ovat selvästi ristiriidassa GDPR:n ja ePrivacy-vaatimusten kanssa. Niiden käyttö rikkoisi läpinäkyvyyden, lainmukaisuuden ja tietojen minimoinnin periaatteita.

Vertailutaulukko

Tyyppi Elinkaari Laajuus Vaaditaanko yleensä suostumus? Keskeiset käyttötapaukset
Istunto Vain selainistunnon ajan Ensimmäinen osapuoli Vain jos ei-välttämätön Kirjautumistila, ostoskori, CSRF-tunnisteet
Pysyvä (ensimmäinen osapuoli) Päivistä vuosiin Ensimmäinen osapuoli Yleensä kyllä Asetukset, analytiikka, "muista minut"
Pysyvä (kolmas osapuoli) Päivistä vuosiin Sivustojen välinen Lähes aina kyllä Mainonta, uudelleenkohdennus, sosiaalisen median widgetit
Secure Vaihtelee Vain HTTPS Riippuu tarkoituksesta Kaikki arkaluonteiset evästeet
HttpOnly Vaihtelee Vain palvelinpuoli Riippuu tarkoituksesta Istuntotunnisteet, todennustunnisteet
SameSite=Strict Vaihtelee Vain sama sivusto Riippuu tarkoituksesta CSRF-herkät toiminnot
SameSite=Lax Vaihtelee Sama sivusto + ylätason navigaatio Riippuu tarkoituksesta Yleinen istunnonhallinta
SameSite=None Vaihtelee Kaikki kontekstit (vaatii Secure) Lähes aina kyllä Kolmannen osapuolen upotukset, sivustojen välinen todennus

Mitä tämä tarkoittaa vaatimustenmukaisuuden kannalta

Evästeen tyyppi vaikuttaa suoraan vaatimustenmukaisuusvelvoitteisiisi:

  1. Ensimmäisen osapuolen istuntoevästeet, jotka ovat ehdottoman välttämättömiä (kirjautumisistunnot, ostoskorit, CSRF-tunnisteet), on vapautettu suostumusvaatimuksista ePrivacy-direktiivin 5 artiklan 3 kohdan nojalla.
  2. Ensimmäisen osapuolen pysyvät evästeet analytiikkaa, asetuksia tai toiminnallisuutta varten vaativat yleensä suostumuksen — vaikka jotkin tietosuojaviranomaiset sallivat rajoitettuja poikkeuksia ensimmäisen osapuolen analytiikalle tietyin ehdoin.
  3. Kolmannen osapuolen evästeet vaativat lähes aina nimenomaisen ennakkosuostumuksen. Oikeutettuja poikkeuksia on hyvin vähän.
  4. Turvallisuusattribuutit (Secure, HttpOnly, SameSite) eivät muuta suostumusvaatimuksia, mutta niiden käyttö osoittaa hyvää turvallisuuskäytäntöä — mikä on GDPR-vaatimus itsessään.

Sen tietäminen, mitä evästeitä verkkosivustosi tarkalleen asettaa — ja mitä tyyppiä kukin niistä on — on kaiken vaatimustenmukaisuusohjelman perusta. Passiron skanneri tunnistaa ja luokittelee automaattisesti jokaisen verkkosivustosi evästeen, mukaan lukien kolmannen osapuolen evästeet, jotka upotetut skriptit asettavat ja joista et ehkä ole edes tietoinen.

Nyt kun ymmärrämme tyypit, katsotaan, miten evästeet järjestetään suostumuskategorioihin — luokittelujärjestelmä, joka määrää, miten ne näkyvät evästebannerissasi.

Noudattaako verkkosivustosi evästesääntöjä?

Skannaa verkkosivustosi ilmaiseksi ja löydä kaikki evästeet muutamassa minuutissa.

Skannaa evästeesi ilmaiseksi