Tietoturva: mitä tallennukseen ei pidä koskaan tallentaa
Vältä tunnisteiden tai henkilötietojen tallentamista localStorageen
Tietoturva: mitä tallennukseen ei pidä koskaan tallentaa on ilmainen HTML Academy-oppitunti CoddyKitissä. Tämä on oppitunti 4/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu HTML Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. HTML Academy-kurssilla on yhteensä 4 oppituntia.
Storage tallentaa tiedot pelkkänä tekstinä
localStorage ja sessionStorage tallentavat tiedot salaamattomina levylle käyttäjäprofiilin yhteyteen. Jokainen tiedostojärjestelmään pääsevä prosessi – kuten haittaohjelma, varmuuskopiointityökalu tai toinen sisäänkirjautunut käyttäjä – voi lukea kaikki tallentamasi arvot selaimen ohi.
Kaikki skriptit voivat käyttää tietoja
Kaikki originilla toimivat skriptit jakavat saman Storagen. Onnistunut XSS-hyökkäys, vaarantunut kolmannen osapuolen SDK tai haitallinen selainlaajennus voi kutsua localStorage.getItem-metodia ja siirtää kaikki tallennetut arvot hyökkääjälle. Skriptikohtaista eristystä ei ole.
Älä koskaan tallenna todennustunnisteita
Älä tallenna istuntotunnisteita, JWT-tunnisteita, päivitystunnisteita tai API-avaimia localStorageen. Jos hyökkääjä lisää yhden JavaScript-rivin, tunniste vuotaa välittömästi. Käytä httpOnly-, Secure- ja SameSite-evästeitä, jotta tunniste ei ole koskaan JavaScriptin saavutettavissa.
Älä koskaan tallenna salasanoja
Salasanojen tallentaminen missä tahansa muodossa – selväkielisenä, hajautettuna tai salattuna – on asiakaspuolella väärin. Asiakaspuolen hajautus ei auta, koska hyökkääjä voi lukea hajautusarvon ja käyttää sitä uudelleen todentamiseen. Salasanojen käsittely kuuluu kokonaan palvelimelle, jossa käytetään tarkoitukseen soveltuvaa salasanahajautusta, kuten bcryptiä.
Älkää koskaan tallentako luottokorttitietoja
PCI-DSS kieltää korttinumeroiden, CVV-tunnusten, magneettijuovatietojen tai vanhenemispäivien tallentamisen asiakaspuolen tallennustilaan. Käyttäkää sen sijaan tokenisoitua maksupalveluntarjoajaa (Stripe, Braintree, Adyen), joka palauttaa origininne sidotun lyhytikäisen tokenin.
Älkää koskaan tallentako henkilötunnisteita
Viranomaisen myöntämät tunnisteet, täydelliset syntymäajat, kotiosoitteet ja terveystiedot kiinnittävät sääntelyviranomaisten (GDPR, HIPAA) ja hyökkääjien huomion. Säilyttäkää vain nykyisen istunnon tarvitsema tieto, pyytäkää se uudelleen tarvittaessa ja antakaa palvelimen säilyttää ensisijainen tieto.
XSS moninkertaistaa vahingot
document.cookie-tiedon vuotava XSS-haavoittuvuus on vakava asia. Sama haavoittuvuus sivulla, joka tallentaa tokeneita localStorageen, antaa hyökkääjälle kaikki tallennetut arvot kerralla. Käsitelkää localStoragea pintana, jonka periaate on: "jos yksi skripti vaarantuu, kaikki vaarantuu".
Salaus ei pelasta
Arvojen salaaminen avaimella, joka on myös JavaScriptissä, ei tarjoa todellista suojaa — hyökkääjä, joka pystyy lukemaan salatekstin, pystyy lukemaan myös avaimen. Todelliset salaisuudet on säilytettävä palvelinpuolella ja myönnettävä uudelleen, eikä niitä saa koskaan säilyttää asiakaspuolella.
Turvallisesti tallennettavat asiat
Käyttöliittymäasetukset (teema, kutistettu sivupalkki, kieli), ei-arkaluonteiset ominaisuusliput, lomakeluonnosten sisältö ja tilapäinen ohjatun toiminnon tila ovat kaikki turvallisia. Ne näkyvät käyttäjälle muutenkin, eikä niiden vuotaminen mahdollista tilin haltuunottoa.
localStorage.setItem("theme", "dark");
localStorage.setItem("sidebar:collapsed", "true");
localStorage.setItem("draft:post-123", draftMarkdown);Käyttäkää evästeitä autentikointiin
Asettakaa autentikointi käyttämällä Set-Cookie: token=...; HttpOnly; Secure; SameSite=Strict -otsaketta. HttpOnly-lippu estää JavaScriptiä pääsemästä evästeeseen, mikä neutraloi useimmat tokeneita varastavat XSS-hyökkäyskuormat, vaikka sivulla olisi muitakin virheitä.
Tallennuksen käytön suojatoimet
Jos arkaluonteiselta vaikuttavia tietoja on pakko välimuistittaa, rajatkaa niiden käyttö tiukasti (lyhyt TTL, tyhjennys uloskirjautuessa, poistaminen välilehden sulkemisen yhteydessä sessionStoragea käyttäen), käyttäkää tiukkaa Content Security Policy -käytäntöä estämään injektoidut skriptit ja auditoikaa jokainen autentikoiduilla sivuilla suoritettava kolmannen osapuolen skripti.
Tietotesti
Miksi localStorageen tallennettuja autentikointitunnuksia pidetään tietoturvariskinä?
Yhteenveto
Web Storage on tekstimuotoista, skriptien luettavissa ja origin-kohtaisesti jaettua. Älkää tallentako sinne autentikointitunnuksia, salasanoja, maksutietoja tai säänneltyjä henkilötietoja. Säilyttäkää salaisuudet httpOnly-evästeissä ja varatkaa localStorage vaarattomalle käyttöliittymätilalle, jonka käyttäjä voisi nähdä muutenkin.
Opi HTML tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 40
- Oppitunnit
- 159
Usein kysytyt kysymykset
Onko oppitunti ”Tietoturva: mitä tallennukseen ei pidä koskaan tallentaa” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa HTML Academy-oppimispolun 3 oppituntia, myös oppitunnin “Tietoturva: mitä tallennukseen ei pidä koskaan tallentaa”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. HTML Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Tietoturva: mitä tallennukseen ei pidä koskaan tallentaa”?
Vältä tunnisteiden tai henkilötietojen tallentamista localStorageen Harjoittelet HTML Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni HTML Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin HTML Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.
Kuinka kauan ”Tietoturva: mitä tallennukseen ei pidä koskaan tallentaa”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä HTML Academy-oppitunnilla?
Kyllä. Jokainen HTML Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- localStorage vastaan sessionStorage
- Tietojen hakeminen, asettaminen ja poistaminen
- Storage-tapahtumien kuunteleminen
- Tietoturva: mitä tallennukseen ei pidä koskaan tallentaa