140 likes | 290 Views
Shibboleth-tekniikan yleisesittely. Haka-käyttäjien kokoontuminen 15.1.2008 Mikael Linden tieteen tietotekniikan keskus CSC. Tieteen tietotekniikan keskus CSC. Opetusministeriön omistama osakeyhtiö non-profit tehtävä tuottaa keskitettyjä IT-palveluita korkeakouluille ja tutkimuslaitoksille
E N D
Shibboleth-tekniikan yleisesittely Haka-käyttäjien kokoontuminen 15.1.2008 Mikael Linden tieteen tietotekniikan keskus CSC
Tieteen tietotekniikan keskus CSC • Opetusministeriön omistama osakeyhtiö • non-profit • tehtävä tuottaa keskitettyjä IT-palveluita korkeakouluille ja tutkimuslaitoksille • Suurteholaskenta • Funet-verkko • CSC ja korkeakoulujen käyttäjähallinto • korkeakoulujen toimintaa kokoava ja koordinoiva työrukkanen • Haka-luottamusverkosto
Sisältö • Peruskäsitteitä • Shibboleth-väliohjelmisto • Skeema ja attribuutit
Palvelunomistaja esim. talous- hallinto 1. Henkilötietojen ylläpito (identity) 2. Käyttövaltuudet (authorisation) 3. Henkilöllisyyden todentaminen(authentication) 2. ”Laitosjohtajat hyväksyvät matkalaskut” 4. Jäljitettävyys (audit) 3. KäyttäjätunnusSalasana 4. Kenellä on oikeus? Nimi: Esko Esimerkki Käyttäjätunnus: eesimerk E-mail: esko.esimerkki@korkeakoulu.fi Rooli: laitosjohtaja 1. Eskon henkilötiedot viedään järjestelmään Auditoija Käyttäjähallinto Palvelu (esim. matkanhallinta) Esko Esimerkki
WWW esim. FinELibin Nelli-portaali esim. Virtuaalikurssin oppimisalusta Moodle Käyttäjän tunnistus yli korkeakoulurajojen (”federoitu identiteetti”) Paikalliset käyttäjätunnukset Korkeakoulu A Paikalliset käyttäjätunnukset Korkea- koulu B Paikalliset käyttäjätunnukset Korkeakoulu C
Mihin korkeakoulurajat ylittävää tunnistusta voi käyttää? • Kirjastojen palvelut • Käyttäjän yksilöinti ja profilointi: Nelli-portaali, Voyager-kirjastojärjestelmä, aineistontarjoajien portaalit • Käyttäjän auktorisointi: aineistontarjoajien palvelut • verkko-opetus/opiskelu • Oppimisalustat, opetuksen tukityökalut • korkeakoulujen verkostojen portaalit ja palvelut • Kansalliset palvelut käyttäjille korkeakouluissa • Suomen Akatemia: tutkimusrahoitushakemus • YTHS: terveystarkastusajanvaraus • CSC:n palvelut tutkijoille, Funet-palvelut • ASP-sovellukset • henkilöstö/taloushallinto: Personec hr (UPJ-keskustelut), Rondo (ostolaskun kierrätys), Travel (matkalaskut) ym • (korkeakoulujen sisäinen käyttäjätunnistus)
Sisältö • Peruskäsitteitä • Shibboleth-väliohjelmisto • Skeema ja attribuutit
Shibboleth-väliohjelmisto • Yhdysvaltojen yliopistojen Internet2-hanke • Protokollan määrittely ja sen open source –toteutus • nojaa SAML:iin, SOAP:iin ja XML:ään • v 1.0 6/2003, v 1.3 7/2005 (SAML1.1) • v 2.0:n myötä Liberty-yhteensopivuus (SAML 2.0) • WWW-ympäristössä • Tuotantokäytössä korkeakouluissa Yhdysvalloissa, Sveitsissä, Suomessa, Britanniassa, Ranskassa • Kehitys/käyttöönottovaiheessa Australiassa, Ruotsissa, Saksassa, Belgiassa… • http://www.rediris.es/wiki/tf-emc2/index.php/Federations
3. Username: eskoe Password: 95iEfHw Shibboleth 1.x-viestinvaihdot 1. HTTP ”Tahdon sisään portaaliinhttp://www.nelliportaali.fi/” Service Provider(Shibboleth SP) Nelli-portaali 2. HTTP redirect ”Kaveri teidän korkeakoulusta haluaa portaaliin.Ottakaa hänestä selvää!” Kotiorganisaatio Identity Provider(Shibboleth IdP) HY 4. HTTP POST/SAML ”Tahdon sisään portaaliinhttp://www.nelliportaali.fi/ Kahvani on F49E4065A…” näytetään lääketieteilijöidenportaali 5. SAML SOAP ”Kertokaa kaverista jonka kahva on F49E4065A…” 6. SAML SOAP ”Hän on lääketieteen opiskelija”
Shibboleth 1.3:n sisärakenne Service Provider (SP) http GET Esko Esimerkki, HY Kahvanpyytäjä REDIRECT Mikä on organisaatiosi? WAYF Autentikointi Kahvapyyntö Identity Provider (IdP) Auth.palvelin(Pubcookie) Kahva-palvelin Kahva (handle) Attribuutin-pyytäjä Attribuuttipyyntö+kahva LDAP taiRDB Attribuutti-palvelin Attribuutit Pääsynvalvoja Resurssi
Sisältö • Peruskäsitteitä • Shibboleth-väliohjelmisto • Skeema ja attribuutit
Skeema • Attribuutit edellyttävät skeemaa riippumatta käytetystä tekniikasta (Shibboleth, LDAP, relaatiotietokanta) • Skeema on sopimus, joka määrittelee attribuuttien • syntaksin (kielioppi) • esim. attribuutti on ’alphanumeric’= koostuu numeroista ja kirjaimista • semantiikan (merkitys) • esim. attribuutti tarkoittaa henkilön työpuhelinnumeroa • Sanastot, esim. henkilön mahdollisia rooleja ovat ”opiskelija”/”henkilökunta”/”muu” • Meillä käytössä olevia skeemoja • Person, organizationalperson, inetOrgPerson ym • eduPerson (Yhdysvaltojen yliopistot), schac (Euroopan yliopistot) • funetEduPerson 2.0 (edellinen suomalaisin maustein)
Joitain attribuutteja… • Cn, givenname, surname = nimi • Mail = sähköpostiosoite • eduPersonAffiliation = henkilön perusrooli(t) yliopistossa • eduPersonPrincipalName = uniikki tunniste, ”käyttäjätunnus” (linden@tut.fi) • schacPersonalUniqueID = henkilötunnus • funetEduPersonTargetDegree = tavoitetutkinto, esim • funetEduPersonTargetDegree: urn:mace:funet.fi:attribute-def:funetEduPersonTargetDegree:university:311 = teologian tohtori • Lisätietoa:http://www.csc.fi/hallinto/haka/tekniikka/funeteduperson-skeema
Shibboleth: Attribuutit ja tietosuoja • Shibboleth-toteutuksessa attribuuttien käsittelyä voidaan säätää kolmella tasolla • Site ARP (attribute release policy) • kotikorkeakoulu ottaa kantaa, mitä attribuutteja Shibboleth IdP luovuttaa millekin Shibboleth SP:lle • User ARP • kukin käyttäjä määrittelee, mitä henkilötietoja hänestä luovutetaan millekin Shibboleth SP:lle • AAP (attribute acceptace policy) • palvelu (Shibboleth SP) määrittelee, mitä attribuutteja se hyväksyy • Muistakaa noudattaa henkilötietolakia!