Kehittäjille

Pääkomponentit

Allaoleva kaaviokuva selvittää MPASS-ratkaisun eri komponenttien välisiä suhteita ulkoisiin järjestelmiin. Tarjoamme selkeät liityntärajapinnat niin erilaisille tunnistusvälineiden tuottajille kuin oppimateriaalipalveluiden tuottajille, jotka on kuvattu tällä sivustolla.

 MPASS-komponentit

Kun palvelun integrointi on tehty, asiakkaanne tunnistavat MPASS yhteensopivan palvelun tästä merkistä:

eca-mpass-compatible(1)

Kehittäjille Slack -kanava

Koska tieto vaihtuu paremmin keskustellen, olemme perustaneet MPASS -ratkaisulle Slack -kanavan Digipalvelutehtaan työtilaan. Katso ohjeet ja liity keskusteluun.

Rajapinnat

MPASS.id ratkaisu sisältää kaksi rajapintapalvelua, joista ensimmäisen avulla hallinnoidaan tunnistuksen proxyn metatietoja. Toinen rajapintapalvelu on liityntä eri maissa sijaitsevien MPASS.id -pohjaisten tunnistuspalvelujen metatietoihin eli rekisterirajapinta. Lue lisää.

MPASS proxy Githubissa

Alla 10 viimeisintä asiaa. Katso kaikki keskustelut Githubista.

MPASS register Githubissa

MPASS register on kokeellinen komponentti, jonka avulla hallinnoidaan usean eri MPASS proxyn tietoja. Rekisterin ajatuksena on mahdollistaa rajat ylittävän tunnistuksen tekeminen palveluissa.

Alla 10 viimeisintä asiaa. Katso kaikki keskustelut Githubista.

Tietomalli

Käytämme tietomallin kehittämisessä, ylläpidossa ja jakelussa yhteentoimivuusmenetelmää IOW. Tietomalli on draft versiossa.

  • MPASSid -tietomallin lataaaminen API:n kautta tapahtuu esimerkiksi komennolla:
    • curl -L -v -H ”Accept: application/schema+json” -H ”Accept-Language: fi” http://iow.csc.fi/ns/mpass# 
  • MPASSid -tietomalli visualisoituna: http://iow.csc.fi/ns/mpass#
  • MPASSid -tietomallin tarkastelu JSON muodossa selaimella.

Tunnistusvälineiden tuottajat

MPASS-ratkaisussa tunnistusvälineet ovat itsenäisiä ja täysin eroteltuna käyttäjärekistereistä. Tämän vuoksi vaatimukset tunnistusvälineelle ovat hyvin suoraviivaiset: 

1. Käyttäjä tunnistetaan sovitun politiikan mukaisesti

Yleisin ja perinteisin tapa tunnistaa käyttäjät perustuu käyttäjätunnukseen ja salasanaan, mutta se ei ole suinkaan ainoa vaihtoehto: lisähaasteen MPASS-ratkaisun tunnistuksen ongelmakenttään tuovat kaikkein nuorimmat oppilaat, joiden luku- ja kirjoitustaito ei välttämättä ole vielä luotettavan salasana-tunnistuksen vaatimalla tasolla.

2. Tunnistusväline välittää MPASS-ratkaisulle staattisen teknisen tunnisteen tunnistetusta käyttäjästä onnistuneen tunnistustapahtuman jälkeen

Usein tunnistusvälineiden käyttäjätietokannoissa on muutakin käyttäjätietoa, kuin vain tunnistukseen vaadittava tunnistetiedot. MPASS-ratkaisu tarvitsee kuitenkin vain yllämainitun teknisen tunnisteen käyttäjästä, jonka ei myöskään tarvitse paljastaa mitään käyttäjän tilin henkilökohtaisia tietoja kuten käyttäjätunnusta tai nimeä. Tärkeää on, että sama välitetty tunniste yksilöi käyttäjän tunnistusvälineessä tunnistushetkestä riippumatta.

3. Tunnistusvälineen tarjoama rajapinta tukee tunnistuksen “pakottamista” niin, että tunnistus vaaditaan käyttäjältä mahdollisesti voimassaolevasta istunnosta huolimatta

Etenkin yhteiskäyttöisillä tietokoneilla ja tableteilla jonkun aikaisemman käyttäjän istunto on voinut jäädä epähuomiossa päälle. Käyttäjien yksityisyyden varmistamiseksi on tärkeää pystyä tietyissä tilanteissa varmistamaan, että tunnistettu käyttäjä on edelleen sen hetkinen käyttäjä.

Olemme tunnistaneet oleellisimmiksi standardeiksi tunnistusvälineen integrointiin OAuth, OpenID Connect ja SAML -teknologiat.

Oppimateriaalipalveluiden tuottajat

MPASS-ratkaisu toteuttaa EduCloud Auth standardin, jonka mukaisesti eri palveluntarjoajat saavat käyttäjän tunnistukseen liittyvät tiedot SAML 2.0 Web Single Sign-On -protokollan avulla. Palveluntarjoajaan viitataan SAML-määrityksissä  termillä Service Provider (SP) kun taas käyttäjän tunnistaja on Identity Provider (IdP). MPASS Proxy -komponentti toimii SAML IdP -roolissa MPASS-ratkaisussa tunnistukseen nojaavien palveluiden näkökulmasta, piilottaen useiden eri tunnistusvälineiden erilaiset tekniset ratkaisut yhden rajapinnan taakse.

MPASS-ratkaisu välittää tällä hetkellä seuraavat attribuutit tunnistetusta käyttäjästä tunnistustapahtuman yhteydessä:

  • Etu- ja sukunimi
  • MPASS-käyttäjätunniste
  • Kunta
  • Koulu
  • Luokka (oppilaista)
  • Roolitieto

Palveluntarjoajalta vaaditaan seuraavat konkreettiset toimenpiteet:

1. SAML 2.0 Service Provider -roolin toteutus

Mikäli SAML -tekniikkaa ei ole tuettu palveluntarjoajan käyttämän sovelluksen toimesta, markkinoilta löytyy useita tuotteita tuen rakentamiseen. Avoimen lähdekoodin lisenssillä on julkaistu niin valmiita Web-palvelimelle asennettavia tuotteita, sovellusten ohjelmakoodissa hyväksikäytettäviä kirjastoja kuin myös tietyille sovelluksille tehtyjä valmiita plugineja. Paras/suositeltavin vaihtoehto riippuu sovelluksen sekä teknisestä toteutuksesta että sovelluksen tuotantoympäristöstä.

2. Luottamussuhteen solmiminen MPASS Proxyn kanssa

Palveluntarjoajan tulee generoida SAML 2.0 Metadata, joka kuvaa sovelluksen SAML-identiteetin ja protokollan tiedonvaihtoon tarvittavat attribuutit. XML-tiedosto tai tiedoston sisältävä URL-osoite lähetetään MPASS Proxyn ylläpitoon sähköpostitse (mpass-admins@postit.csc.fi). Kun sovellus on lisätty tunnistusratkaisun luottamusverkostoon, ylläpito lähettää vastauksena SAML IdP Metadatan, johon sovelluksen tulee luottaa tunnistuslähteenä.

Valmiita paketteja kokeilua varten

SAML 2.0 tuotteita

SAML 2.0 ohjelmistokirjastoja

Esimerkkejä olemassaolevista SAML-plugineista

SAML-määritykset