Hajautettujen järjestelmien pääsynvalvonta

Kaikki hajautetut järjestelmät tarvitsevat mekanismeja pääsypyyntöjen, attribuuttien, politiikkojen ja päätösten turvalliseen siirtämiseen solmujen välillä. Nämä mekanismit perustuvat suurelta osin kryptografiaan. Keskitettyihin järjestelmiin verrattuna hajautetun järjestelmän vaatimukset teettävät enemmän työtä. Erityisesti täytyy pystyä tunnistaman ja noutamaan kaikki tietyn pyynnön käsittelyyn vaikuttavat tekijät. Tässä luvussa käsitellään usean organisaation muodostamia luottamusverkostoja eli federaatioita. Sellaisessa yhden osapuolen asettamia politiikkoja käytetään toisen osapuolen päätöksissä.

Federoitu pääsynvalvonta

Kun hajautettu järjestelmä muodostuu yhteistyötä tekevistä ja toisiinsa luottavista organisaatioista, pääsynvalvonnan kokonaisuutta kutsutaan usein federoiduksi identiteetin- ja pääsynhallinnaksi. Lyhennettä IAM (identity and access management) voi käyttää suomeksikin. Federoidun IAMin perustilanteessa organisaation työntekijä kirjautuu organisaatiolle palveluja toimittavan toisen organisaation järjestelmiin. Hänen oman organisaationsa hallinnoi identiteettiä ja toinen organisaatio nojaa siihen toteuttaessaan pääsynvalvontaa.

Federointi tuo tehokkuushyötyjä: käyttäjä selviää vähemmällä määrällä käyttäjätunnuksia ja salasanoja, päällekkäisiä käyttäjätietoja tarvitsee ylläpitää vähemmän, ja salasanojen nollaamiseen kuluva aika vähenee. Lisäksi esim. organisaation palveluja voi olla helpompi ulkoistaa, kun uusia käyttäjätunnuksia ja salasanoja ei tarvitse luoda niitä varten. Federoitu identiteetinhallinta mahdollistaa erityisesti kertakirjautumisen (single sign-on): samalla autentikoitumisella käyttäjä pääsee useaan eri palveluun.

Kun organisaatiot muodostavat federoidun pääsyalueen, identiteetit monine attribuutteineen, politiikat ja tehdyt päätökset pitää tuoda eri konteksteista (nimiavaruuksista). Federaatiolla voi olla useita paikkoja, joissa politiikkaa käsitellään: jossain asetetaan säännöt, jossain ratkaistaan pääsypyynnöt, jossain toteutetaan ratkaisut, jostain voidaan hakea lisätietoja pääsypyynnön arvioimiseksi. (Nämä neljä paikkaa esiteltiin jo aiemmin.)

Federoidun identiteetinhallinnan peruskomponentit ovat:

  • Tunnistuspalvelu (Identity Provider, IdP): Palvelin, joka kirjautumishetkellä suorittaa käyttäjän autentikoinnin. Samalla tunnistuspalvelin luovuttaa käyttäjän attribuutteja tunnistukseen nojaavalle palvelulle.
  • Tunnistukseen nojaava palvelu (Relying Party, RP tai Service Provider, SP): Palvelin, joka nojaa pääsynvalvonnassaan tunnistuspalvelun suorittamaan käyttäjätunnistukseen ja tunnistuspalvelusta saataviin käyttäjän attribuutteihin. Tunnistukseen nojaava palvelu on se “varsinainen” sovellus, joka tarvitsee käyttäjän tunnistusta.
Federoitu identiteetinhallinta

Federoidussa identiteetinhallinnassa on monia turvahyötyjä:

  • Käyttäjän käyttäjätunnus ja salasana eivät koskaan käy tunnistukseen nojaavassa palvelussa, koska käyttäjätunnus ja salasana annetaan aina ja vain tunnistuspalvelulle. Niinpä nojaavaan palveluun murtautumisesta ei voi seurata käyttäjätunnusten ja salasanojen vuotaminen.
  • Koska käyttäjällä on vain yksi käyttäjätunnus ja salasana, jolla hän kirjautuu tunnistuspalveluun, voidaan salasanaan kohdistaa tiukempia laatuvaatimuksia.
  • Jos salasanatunnistus halutaan korvata vahvemmalla tunnistuksella, vahvan tunnistuksen käyttöönotto voidaan tehdä keskitetysti tunnistuspalvelussa. Näin vahva tunnistus saadaan kaikkien nojaavien palveluiden ulottuville kertaheitolla ilman, että nojaaviin palveluihin tarvitsee tehdä muutoksia.
  • Jos käyttäjän kirjautuminen palveluihin tapahtuu aina keskitetyn tunnistuspalvelun kautta, jäljitettävyys ja raportointi helpottuvat. Jos on esimerkiksi syytä epäillä, että käyttäjätili on joutunut tunkeutujan haltuun, voidaan tunnistuspalvelun lokeista selvittää, missä kaikissa palveluissa varastettua identiteettiä on käytetty.

Suurimpia federoidun identiteetinhallinnan haasteita on organisaatioiden välinen luottamus. Luottamuksella tarkoitetaan sitä laajuutta, jossa toimija on halukas olemaan tietyssä asiassa riippuvainen toisesta toimijasta ja kokee olonsa suhteellisen turvalliseksi, vaikka olemassa on myös mahdollisuus negatiivisesta seurauksesta (vrt. käsitekartat). Kysymys organisaatioiden välisestä luottamuksesta on keskeinen, koska tunnistuspalvelua ja tunnistukseen nojaava palvelua ylläpitävät eri organisaatiot.

  • Tunnistukseen nojaavan palvelun tulee luottaa, että tunnistuspalvelu on tunnistanut käyttäjän riittävän luotettavalla tavalla. Riittävä luotettavuus riippuu nojaavasta palvelusta – mitä sensitiivisempi palvelu on, sitä luotettavammin käyttäjä tulee tunnistaa.
  • Tunnistukseen nojaavan palvelun tulee luottaa, että tunnistuspalvelun sille ojentamat attribuutit ovat oikein ja ajan tasalla. Nojaavan palvelun tekemä pääsynvalvontapäätös saattaa nojata käyttäjän attribuutteihin.
  • Tunnistuspalvelun tulee luottaa siihen, että tunnistukseen nojaava palvelu ei loukkaa käyttäjän yksityisyyttä käsitellessään tunnistuspalvelun sille ojentamia attribuutteja.

Osapuolet joutuvat hallitsemaan riskiä siitä, että vastapuoli ei ole siihen kohdistetun luottamuksen arvoinen. Keskeinen tapa hallita riskiä on sopia osapuolten kesken niistä oikeuksista ja velvollisuuksista, joita federoituun identiteetinhallintaan liittyy. Sopimus sisältää paitsi teknisiä asioita (esim. käytettävät protokollat, varmenteet ja attribuuttien skeema), myös toimintakäytäntöihin liittyviä asioita (esim. tunnistuksen luotettavuudelle ja attribuuttien ajantasaisuudelle ja palvelun saatavuudelle asetettavat vaatimukset).

Federoitu identiteetin- ja pääsynhallinta
Tunnistuspalvelu
Tunnistukseen nojaava palvelu

Lähde:

  • Linden, M. (2017). Identiteetin- ja pääsynhallinta. (Tampereen teknillinen yliopisto. Tietotekniikan laboratorio. Raportti; Vuosikerta 7). Tampere University of Technology.
Palautusta lähetetään...