Tietolinja

Tietolinja
01/2004

Shibboleth – verinen legenda, moderni kirjautumisjärjestelmä

Ari Rouvari
Helsingin yliopiston kirjasto

URN:NBN:fi-fe20041346


Pääkirjoitus
Artikkelit
Uutisia,
ajankohtaista


"Sano shibboleth!"; käskettiin. Efraimilaiset eivät osanneet ääntää sanan ensimmäistä sh-äännettä, joten heidät tunnistettiin, tapettiin ja heitettiin Jordanin virtaan. Shibboleth-termi tulee Raamatusta. Sitä käytettiin salasanana, jolla vääräuskoiset paljastettiin. (Tuomarien kirja 12:5 ja 12:6)

Shibboleth autentikointijärjestelmä on suunniteltu erityisesti organisaatioiden rajat ylittävän käyttäjähallinnan tarpeisiin. Se mahdollistaa yhden kirjautumisen kaikkiin kotiorganisaation tarjoamiin palveluihin. Shibboleth on Internet2/MACE -projektin kehittämä standardeihin perustuva arkkitehtuuri, jolla on avoin lähdekoodi.

Vastaavia palveluja kehitetään eri puolilla palloa. Paikallisia esimerkkejä ovat espanjalaisten oma suljettu Papi ja norjalaisten FEIDE - ruotsalaiset vasta diskuteeraavat. Shibbolethia on pilotoinut 33 yhdysvaltalaista kotiorganisaatiota, 6 sveitsiläistä ja muutama suomalainen. Myös britit ovat käynnistäneet Shibboleth kehittämishankkeen.

Kansalliskirjasto ja CSC, Tieteen tietotekniikan keskus ovat käynnistäneet yhteishankkeen, jossa Nelli-tiedonhakuportaaliin asennetaan Shibboleth-kirjatumisjärjestelmä. Tavoitteena on ottaa Shibbolet käyttöön vuoden 2004 aikana. Shibboleth asennettaneen myöhemmin myös Linnea-kirjastopalveluihin. CSC toteuttaa Nellin shibboloinnin.

Toistaiseksi Nelli-portaalin kirjatumisjärjestelmänä on käytetty LDAPia (Lightweight Directory Access Protocol). Sen käyttö on mahdollista vain niissä yliopistoissa, joissa on LDAP-asiakashakemistorakenne. LDAPin huonona puolena on se, että kriittistä tietoa (salasana) kulkee portaalipalvelimella, vaikkakin salattuna. Shibboleth-tunnistustapa ratkaisee tämän ongelman. Shibboleth-järjestelmässä kirjautumista varten siirrytään kotiorganisaation kirjautumispalvelimelle, jossa käyttäjä tunnistetaan. Tämän jälkeen Nelli-portaalille lähetään tieto siitä, että käyttäjä on tunnistettu. Nellissä asiakas yksilöidään sähköpostiosoitteen alkuosan avulla.

Turvallisen tunnistamisen lisäksi Shibboleth mahdollistaa kertakirjatumisen. Kertaalleen autentikoidun asiakkaan ei tarvitse kirjautua uudelleen siirtyessään palvelusta toiseen, sillä Shibboleth-tekniikalla voidaan välittää tiedot autentikoidusta henkilöstä. Asiakas voi siirtyä tunnistuksen vaatimaan palveluun ilman uudelleen kirjautumista, mikä saattaa kuitenkin herättää hämmennystä. Palvelun toteuttaminen pitää suunnitella huolellisesti.

 

Shibboleth ja Nelli

Nelliin kirjautuminen Shibboleth autentikointijärjestelmän avulla (kuva 1):

  1. Autentikointi käynnistyy, kun asiakas valitsee Nelli-portaalin kirjautumissivulta oman kotiyliopistonsa.
  2. Asiakas siirtyy yliopistonsa kirjautumispalveluun ja antaa tunnuksen ja salasanan. Asiakastiedot tarkistetaan LDAP-asiakasrekisterihakemistosta.
  3. Onnistuneen kirjautumisen jälkeen siirretään tieto tunnistuksesta sekä sovitut attribuutit Shibboleth Target Site:en. Se voisi olla yhtä hyvin myös Nelli-palvelimella.
  4. Nelli-portaalille ilmoitetaan onnistuneesta kirjautumisesta.
  5. Nelli-portaali kysyy sovitut attribuutit CGI-ohjelmalla Sibboleth Target Sitessä olevalta attribuuttien hallintapalvelusta (Attribute Authority).
  6. Shibboleth Target Site lähettää vastauksena kysytyt attribuutit. Asiakas identifioidaan Nellissä sähköpostiositteen alkuosan avulla (attribuutti).

Kuva 1, Shibboloitu Nelli-portaali

Target Sitessä on myös kahvapalvelu, jossa säilytetään tietoa avoimista istunnoista eli kirjautuneista asiakkaista. Kertakirjautumispalvelun mukaisesti toimivissa yliopistoissa käydään palvelusta toiseen siirryttäessä ensin tarkistamassa kahvapalvelusta, onko asiakas kirjautunut. Jos hän on kirjautunut, lähetetään siirryttävään palveluun tarvittavat attribuutit. Jos kahvapalvelussa ei ole tietoa asiakkaasta, siirrytään kirjautumispalveluun. Kertakirjautumispalvelua varten pitää vielä sopia muutamista periaatteista, kuten siitä miten suhtaudutaan keskeytyksiin (time out). Lisäksi on sovittava istuntojen lopettamisesta: Poistutaanko ulos kirjauduttaessa aina myös kahvapalvelusta vai suljetaanko ainoastaan paikallinen palvelu, mutta istunto kahvapalvelussa säilyy?

 

Käyttöoikeuksien hallinta Nellissä

Elektronisen aineiston käytönrajaus tehdään tavallisesti IP-osoitteiden avulla. Kirjasto ilmoittaa asiakkaittensa käyttämien tietokoneiden IP-osoitteet (ns. IP-avaruudet) aineiston myyjälle. Tämä kirjaa omaan tietokantaansa IP-numerot, joista aineistoa voi käyttää. Jos yliopisto haluaa tarjota kampusalueen ulkopuolisen käyttömahdollisuuden, on käytettävä esimerkiksi proxy-palvelinta.

Shibboleth voi korvata IP-osoitteiden käytön. IP-osoitteiden sijasta asiakkaiden käyttöoikeudet tarkistetaan attribuuttien (organisaatio ja asiakkaan rooli) avulla. Etäkäyttökin onnistuisi ilman proxy-palvelinta. Käyttöikeuksien rajaamisen ehtona on, että kustantajat ja aineistojen välttäjät shibboloivat palvelunsa. Ainakin muutamat merkittävät kaupalliset toimijat ovat jo testanneet Shibbolethia, sillä joustavammasta käyttöoikeuksien hallinnasta hyötyvät myös kustantajat.

Shibboleth Nellin käyttöoikeuksien hallintavälineenä (visio): Nelliportaaliin kirjautunut asiakas tekee haun ja valitsee saamistaan viitteistä sen, jonka koko tekstin haluaa lukea. SFX-linkityspalvelin luo viitteestä linkin (OpenURL) ja käy hakemassa Sihibbolet Target Sitestä tarvittavat attribuutit (esim. organisaatio ja asiakkaan rooli). Ne lähetetään kohdetietokantaan cookiena tai osana OpenURLia. Asiakkaan käyttöoikeudet tarkistetaan lähetettyjen attribuuttien avulla.

Kuva 2, Shibboleth käyttöoikeuksien hallintavälineenä

Shibboleth on teknisesti melko yksinkertainen ja suhteellisen helposti käyttöön otettavissa. Sen käyttö kuitenkin edellyttää, että kotiorganisaation käyttäjähallinto on hoidettu ryhdikkäästi ja käyttöoikeusrekisterit ovat kunnossa. Kesällä 2004 julkaistaan Shibboleth 1.2. versio, joka mahdollistaa muunkin kuin kuin LDAP-asiakasrekisterin käytön.

Shibboleth sopii hyvin jo verisen legendan takia käyttöoikeuksien ja vapaan tiedon saannin rajoittajaksi. Eri asia on tarvitsevatko sitä kansalaiset, kirjastot vai voittoa tavoittelevat kustantajat.

 

Kirjallisuutta

 


Tietolinja 01/2004

Ari Rouvari, pääsuunnittelija
Helsingin yliopiston kirjasto / Kansallisen elektronisen kirjaston palvelut
PL 26, 00014 HELSINGIN YLIOPISTO
Email: ari.rouvari osoitteessa @helsinki.fi