HY:n alustava ehdotus käyttäjähallintotuotteesta (jota sovellettaisiin Atikiin) Versio 1.3 / 27.9.2008 Ismo Aulaskari HY siis aikoo markkinoida pakettia joihin kuuluisi HY:n konesalissaan ylläpitämä, varmuuskopioitu Linux(RHEL 5) virtuaalipalvelin ja seuraavat HY:n ylläpitämät ohjelmistot (tai vaihtoehtoisesti varmaan ainakin jonkun muun ylläpitämä palvelin ja HY:n ylläpitämät käyttäjähallintoohjelmistot): Ldap autentikointia tukeva Openldap käyttäjähakemisto Kevytkäyttäjähallinto automaatti joka ylläpitäisi Openldapin käyttäjätietoja ja tarjoaisi kaksisuuntaisia rajapintoja muiden järjestelmien (kuten Atik, korkeakoulujen järjestelmät, Oodi) suuntaan Asennettujen ohjelmistojen lähdekoodit vähintään paketin hankkineille asiakkaille saataville, jos ei koko maailman nähtäväksi (jolloin ohjelmistopaketti olisi kaikkien saatavissa ilman tukisopimusta) Optioina (jotka nyt Atikin yhteydessä käytetään) Web käyttöliittymä kevytkäyttäjähallintoautomaatille Vetuma pohjainen tunnistus, käyttäjän rekisteröinti ja salasanan uusiminen, joka on irrallinen moduuli Atik järjestelmästä Perustason käyttäjä ja virkailijaroolien hallinta kevytkäyttähallintoautomaatissa (irrallinen Atik järjestelmästä) Muina optioina (jotka eivät ole välttämättömiä) Shibboleth Identity Provider ja HAKA federaatiota tukeva tietosisältö Ldapin kahdennus (Shibbolethin kahdennusta ei ole HY:llä testattu mutta teoriassa se on mahdollista)
ATIK luo uusi hae muokkaa Rajapintoja Web liitymä LDAP massatuonti esim. Oodista tai käyttölupajär jestelmästä autentikoi hae käyttäjä Kevytkäyttäjähallintosovellus Openldap / Shibboleth IDP Poista Hae kaikki Muokkaa Yliopiston autentikointijärjestelmä Linux palvelin
Yhden tunnuksen politiikan toteuttaminen Ajateltu tässä versiossa tehdä niin että kaikki tunnistukset menevät Openldapin kautta, ja yliopiston tunnusten autentikointi ohjataan openldapista yliopiston Radiukseen, LDAPiin tai muuhun toteutettavaan rajapintaan, käyttäen Openldapkotitekoinen perl demoni siltaa joka on HY:llä tuotantokäytössä Yliopiston olemassaolevista tunnuksista luodaan kopio ATIK tietokantaan saman käyttäjän ATIK tunnukseksi Osaako ATIK ohjata käyttäjän Openldapin kohtaan riippuen siitä onko kysessä yliopiston tunnus, vai toteutetaanko tuki tälle ohjaukselle Openldapiin? Openldap hakemisto Jälkimmäinen vaihtoehto mahdollistaa käyttäjähallinnon helpomman kytkennän ATIK järjestelmään ja voidaan toteuttaa esim. Ldap attribuutin joka jakaa käyttäjät ATIK käyttäjiin ja yliopiston käyttäjiin avulla Skeematuki vähintään attribuuteille uid (käyttäjätunnus) cn (koko nimi muodossa etunimet sukunimi) userpassword (käyttäjän salasanatiiviste) käyttäjän roolit jos tieto on Atik järjestelmästä saatavilla onko opinto oikeutta voimassa tarkempia rooleja, esim. Virkailijastatus eduperson roolit (esim. Vetuma 2.1 VTJ kyselyn avulla): hetu sähköposti givenname (etunimet) sn (sukunimi) voimassaolon loppupvm luontipvm muut tarvittavat tiedot (rajaus Atikin ja käyttölupajärjestelmän välillä) Laskutus? opinnot/ilmoittautumiset? opinto oikeuden pituus? Näitä tuskin tarvitaan käyttäjähallintosovelluksessa, paitsi jos halutaan käyttää niitä rooleina hienojakoiseen auktorisointiin
Skeema laajennettavissa funeteduperson 2.0 ehdot täyttäväksi (ja täten Shibboleth yhteensopivaksi) Mahdollinen HAKA luottamusverkostojäsenyys asettaa tiukkoja vaatimuksia käyttäjähallinnon prosesseille Mahdollisuus kahdentaa Openldap palvelu vikasiedon/kuormantasauksen kannalta Toimii vähin katkoin ilmankin Mahdollisuus Shibboleth Identity Providerin asentamiseen Tarvitaan tuki Shibboleth autentikointiin Rajapinta (Ldap v.3) jonka kautta TLS /LDAPS suojattu simple bind tunnistus käyttäjätunnus menee (ainakin tilapäisesti) lukkoon liian monen epäonnistuneen yrityksen jälkeen yksittäisen käyttäjän tietojen haku (joissain rajatapauksissa on mahdollista sallia koko tietokannan haku Ldap protokollan yli, tätä ei kuitenkaan suositella) esim. Käyttäjän roolin kysely teoriassa voitaisiin sallia käyttäjien luonti ja muokkaaminen Ldap protokollan yli, ohi käyttölupa automaatin, salasanaresetointi nämä kuitenkin parempi toteuttaa käyttäjähallintosovelluksen kautta Konfiguroitu tekstitiedostolla Lokitus säädettävissä, normaalisti ldap operaation tarkkuudella Ldap hakemiston monitorointi? (HY:llä esim. Big Sister, Smokeping, Logwatch..)
Kevytkäyttäjähallinto automaatti J2EE5 alustalle (referenssisovelluspalvelimena Glassfish v2) Automaatti/automaatit joka huolehtii kerran vuorokaudessa vanhentuneiden käyttäjätunnusten poistosta/lukitsemisesta käyttäjätietokannan levylle dumppaamisen varmuuskopiointia varten On konfiguroitavissa tekstitiedostosta ldap palvelimen ja ylläpitotunnuksen tiedot tuetut käyttäjätiedot käyttäjätunnuksen formaattifunktio/ luokka Periaatteessa kahdennettavissa sovelluspalvelinklusterilla Lokitus säädettävissä sovelluspalvelimella, monitorointi sovelluspalvelimella Rajapinta (WS I Basic Profile 1.1 web service) HTTPS yhteyden yli, jonka kautta uusien käyttäjätunnusten luonti Ldapiin käyttäjätunnusten tietojen muokkaaminen roolin (opiskelija/ei opiskelija, virkailija) päivitys salasanan resetointi? käyttäjän/käyttäjien tietojen haku käyttäjän rooli(e)n kysely myös kaikki käyttäjät XML dumppina synkronointitarpeita ajatellen Optiona Oodi rajapinta (Web service, Oodin WS määritelmien mukaan) seuraavien tietojen synkronointiin: opiskelijan vanhojen opiskelutietojen katselu ei ilmeisesti kuulu käyttäjähallintosovelluksen piiriin vaan Atikiin Optiona muu tarvittava organisaatiokohtainen integraatiorajapinta? REST, HTTPS POST? Tarvitaan tarkistuksia yliopiston käyttölupajärjestelmästä, onko käyttäjä jo siellä olemassa
Optiona web liittymä käyttäjätietojen ylläpitoon (liittyy tuotteen muihin käyttömahdollisuuksiin) tarpeita voi tulla myöhemmin käyttäjät jotka eivät voi VETUMA tunnistautua, rekisteröinti, tietojen muuttaminen? käyttäjä/virkailijaroolien ylläpito rooleja rajallinen, harvoin muuttuva joukko, joita kontrolloidaan käyttäjähallinnon puolella ldapissa yksinkertaisuussyistä? Käyttäjän rooleja säilytetään käyttäjähallinnon puolella ATIKkäyttäjäobjekteissa Ldapissa käyttäjällä voi olla monta roolia roolien muokkamiset ws rajapinnan kautta Omien käyttäjätietojen tarkistaminen web lomakkeella Atikin ominaisuus muokkausmahdollisuus myös Atikissa Optiona Vetuma autentikointi osion toteuttaminen Luvan luonti openldapiin Salasanaresetointi (vain Atik tunnuksille, ei yliopiston) Tunnistuksia rajattu määrä/viikko/hetu/ip? Kirjautumiskäyttöliittymä tarjoaa vaihtoehdot: kirjautuminen yliopiston tunnuksilla kirjautuminen ATIK tunnuksilla unohtunut tunnus/unohtunut salasana/uuden tunnuksen rekisteröinti Kun käyttäjä yrittää luoda tunnusta, jos Atik tunnus jo olemassa kerrotaan käyttäjälle käyttäjätunnus, jos ei muista ohjataan salasanaresetointiin Tarkistus onko käyttäjällä tunnusta kotiyliopistossa, henkilötunnuksen perusteella Vetuma tunnistamisen jälkeen ei tarvitse luoda käyttäjälle sessiota ATIKjärjestelmään, vaan on ok että käyttäjä kirjautuu ATIKiin saatuaan VETUMAlla tunnuksen ja salasanan.
Atik käyttölupajärjestelmän prosessit (löyhä hahmotelma) Kevytkäyttäjähallinnon tarjoamat kutsutyypit ja vastaukset: Käyttäjä yrittää kirjautua(tunnus, salasana) ok palautetaan ok väärä tunnus tai salasana palautetaan epäonnistuminen, Atikin tarjottava käyttäjälle linkit seuraaviin: Tunnus olemassa(sukunimi, hetu) Rekisteröidy Ei tunnusta Rekisteröidy Rekisteröidy(sukunimi, hetu) Vetuma tunnistus saadaan varmistettu hetu, Luodaan tunnus palautetaan käyttäjätunnus, tarjotaan opastusta tunnuksista Käyttäjä yrittää kirjautua uudestaan tarjotaan Salasanan resetointia Luodaan tunnus(varmennettu hetu, etunimi, sukunimi, rooli, voimassaolon loppupvm, mail?) palauttaa luodun käyttäjätunnuksen Tunnus olemassa(sukunimi,hetu) palauttaa tunnuksen tai ilmoituksen sen puuttumisesta Salasanan resetointi Vetuma tunnistus varmennetulla hetulla etsitään käyttäjän tunnus, ja annetaan vaihtaa sen salasana Muokkaa tunnusta(tunnus, rooli, henkilötiedot) Poista tunnus(tunnus) Hae tunnuksia(ldap kysely) Roolien kysely(tunnus)