Istunto (tietotekniikka)

Wikipediasta
(Ohjattu sivulta Sessio)
Siirry navigaatioon Siirry hakuun

Istunto (engl. session) on tietotekniikassa käytäntö jolla luodaan pysyvä yhteys protokollan avulla esimerkiksi käyttäjän selaimen ja palvelimen välillä. Olennaista istunnossa on käyttäjän tunnistautuminen ja käyttäjän tietojen liittäminen istunnon aikana.

Istunnon elinkaari

[muokkaa | muokkaa wikitekstiä]
Katso myös: OSI-malli

Istunto syntyy kun istuntoa tukeva protokolla yhdistää kaksi eri päätettä toisiinsa. Yhdistämisen aikana protokolla luo istuntoavaimen, joka on uniikki, vain yhdistettävien päätteiden käytettävissä oleva tunniste. Seuraavaksi protokolla tallentaa tehtyjä toiminteita (kuten yhteysosoitteita sekä mahdollisesti muuta määriteltyä dataa) itse istuntoon. Aina kun nämä kaksi päätettä kommunikoivat keskenään, käytetään istunnossa olevaa dataa määrittelemään toimintoja sen sijaan että nämä luotaisiin aina uudestaan. Lopuksi, kun toinen tai molemmat päätteistä katkaisevat yhteyden, istunto merkitään inaktiiviseksi, ja määritellyn ajan kuluttua roskienkeräin (engl. garbage collector) siivoaa käyttämättömät istunnot.

Monesti istunto on myös mahdollista tallentaa. Istunnon tallentaminen vaatii, että sekä protokolla että päätteet hyväksyvät vanhan istunnon uusimisen ja sen, että roskienkeräin ei siisti (tai siistii hyvin verkkaasti) käyttämättömiä istuntoja.

Ohjelmallinen istunto

[muokkaa | muokkaa wikitekstiä]

Ohjelmallinen istunto tarkoittaa istuntoa joka luodaan päätteissä protokollan ulkopuolella. Esimerkkejä ohjelmallisista istunnoista:

  • JavaScript
    • Eväste: Eväste on käytännössä istunto, joka on voimassa palvelimella määritetyn ajan, ja sisältää www-selailun aikana kertynyttä tietoa käyttäjästä. Yleisimpiä käyttötapoja evästeiden istuntokäyttämiseksi on; sisäänkirjautumisen muistaminen (muista minut), käyttäjän äänestyksen / palautteen / muun lomakkeen tietojen muistaminen sekä mainontaan liittyvä data.
  • PHP
    • Session: PHP sisältää sisäänrakennetun istuntojärjestelmän, joka yleisesti käyttää hyväkseen evästeitä, mutta osaa sijoittaa istuntotunnuksen myös jokaiseen PHP:n generoimaan hyperlinkkiin tukien näin periaatteessa myös selaimia joissa ei ole / ei ole kytketty päälle tukea JavaScriptille. PHP:n istunto tallettaa erikoismuuttujaan $_SESSION kaikki koodin määrittelemät arvot, tukien näin samoja toimintoja kuin evästeet, sekä toimintoja jotka ovat arkaluontoisia kuten: salasanat, suojattujen sivujen suojatasoja ja niin edelleen. PHP:n istunto merkataan inaktiiviseksi selaimen viimeisen ikkunan sulkeuduttua eikä istuntoa voi tallentaa ilman ulkopuolista ohjelmaa tai tietoa (kuten selaimen istuntotallennusmekanismia tai evästettä).