Shibboleth on ilmainen avoimen lähdekoodin tuote, joka tarjoaa federoidun identiteettiratkaisun, jolla käyttäjät yhdistetään sovelluksiin sekä oppilaitosten sisällä että niiden ulkopuolella. Luminan joustava SSO Module Provider -kehys on suunniteltu tukemaan monenlaisia identiteettiratkaisuja, minkä ansiosta Shibboleth voidaan integroida täysimääräisesti infrastruktuuriisi muutamassa yksinkertaisessa vaiheessa.
Yleiskatsaus
Tämä ohje opastaa käyttäjiä integroimaan oppilaitoksensa Shibboleth IDP -palvelimen SSO-järjestelmäksi, jolla käyttäjät kirjataan sisään Luminaan SAML 2.0 -protokollan avulla. Kun määritys on tehty oikein, käyttäjien pitäisi voida tehdä palveluntarjoajan (Service Provider, SP) aloittama kirjautuminen, tulla ohjatuiksi identiteetintarjoajalle (Identity Provider, IDP), jolta pyydetään tunnistetiedot, tulla onnistuneesti todennetuiksi ja tulla sitten ohjatuiksi takaisin Luminaan, jossa heidät kirjataan sisään käyttäjinä.
Shibbolethin määritys
Määritykseen kuuluu Luminan SP-metatietojen luominen ja niiden lisääminen SP-metatietojen tarjoajaksi Shibboleth IDP:lle. Sen jälkeen Luminan määrittäminen kommunikoimaan IDP:n kanssa mahdollistaa uuden SSO-järjestelmän testaamisen ja aktivoimisen.
Ohjeet SP-metatietojen luomiseen löydät napsauttamalla tästä.
Huomautus: Joissakin vaiheissa <organization> korvataan Luminaan liittyvän organisaation wildcard-DNS-nimellä. Esimerkiksi osoitteessa ”https://hudson.yuja.com” <organization> korvattaisiin tekstillä ”hudson”.
Luo SP-metatiedot
- Siirry osoitteeseen https://www.samltool.com/sp_metadata.php.
-
Anna seuraavat parametrit:
Parametri Arvo EntityId https://<organization>.yuja.com Attribute Consume Service Endpoint
(HTTP-POST)
https://<organization>.yuja.com/D/SamlReceiveResponse NameId Format urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress AuthnRequestsSigned False WantAssertionsSigned True - Jätä muut kentät tyhjiksi ja napsauta sitten BUILD SP METADATA.
- Kopioi teksti SP Metadata -tekstikentästä.
- Avaa mikä tahansa tekstieditori. Liitä kopioitu teksti ja tallenna se .xml-tiedostona. Tallenna .xml-tiedosto helposti löydettävään paikkaan, sillä sitä tarvitaan seuraavassa vaiheessa.
Shibboleth IDP:n määritys
- Avaa Shibboleth IDP -hakemistossasi tiedosto %IDP_HOME%/conf/metadata-providers.xml missä tahansa tekstieditorissa.
- Lisää <MetadataProvider>-elementin sisään, jonka xsi:type=”ChainingMetadataProvider”, seuraava elementti, jossa <someId> korvataan sopivalla tunnistemerkkijonolla: <MetadataProvider id="<someId>" xsi:type="FilesystemMetadataProvider" metadataFile="C:\path\to\YuJa\metadata" />
- Varmista, että IDP luovuttaa Luminalle SAML-vastauksessa seuraavat attribuutit:
- Principal Name (eli käyttäjätunnus)
- Etunimi
- Sukunimi
- Sähköposti
-
Rooli
Huomautus: Lumina tarvitsee SAML-vastauksessa käytettyjä attribuuttien nimiä käyttäjien provisiointiin ja luomiseen. Anna nämä arvot Luminalle määrityksen jälkeen.
Role-väittämän avulla määritetään, luodaanko käyttäjille opiskelijan tunnukset (oletus) vai annetaanko heille laajemmat oikeudet (opettaja tai IT-päällikkö). Tämän kentän suositellut arvot ovat IT Manager ja Instructor (käyttäjille, joille haluat antaa IT-päällikön tai opettajan oikeudet), mutta voit käyttää olemassa olevia tai mukautettuja arvoja.
- Lumina ei salaa todennuspyyntöjä eikä tunnista salattuja vastauksia. Siksi IDP on määritettävä niin, että salaus on valinnaista:
- Avaa tiedosto %IDP_HOME%/conf/idp.properties missä tahansa tekstieditorissa.
- Lisää tarvittaessa ominaisuustiedostoon seuraava rivi: idp.encryption.optional = true
- Avaa IDP-metatietotiedosto, joka sijaitsee polussa %IDP_HOME%/metadata/idp-metadata.xml. Tätä tarvitaan Luminan puolen määrittämiseen.
Luminan SAML-määritys
Kun IDP on määritetty, SP on määritettävä kommunikoimaan IDP:n kanssa. Osa määritysparametreista löytyy IDP:n metatiedoista. Integroi Shibboleth Luminaan seuraavien vaiheiden mukaisesti.
- Kirjaudu Luminaan IT-päällikkönä ja siirry kohtaan Hallintapaneeli → Integraatiot.
- Valitse kohdassa ”Valitse integraatio” vaihtoehto SSO – Shibboleth (SAML).
-
Anna seuraavat tiedot. Kun luot SSO-järjestelmää ensimmäistä kertaa, voit jättää käyttäjien provisiointiin liittyvät kentät tyhjiksi, jotta voit ensin hakea arvot SAML-testikirjautumisella (Testaa SAML sisäänkirjautuminen). Voit aina syöttää arvot myöhemmin ja tallentaa määrityksesi.
Attribuutti Pakollinen? Kuvaus Shibboleth SSO URL Kyllä SSO:ssa käytettävä URL-osoite. Tähän Lumina lähettää AuthnRequest-tokenit.
Löytyy Shibboleth IDP:n metatiedoista kohdasta:
<IDPSSODescriptor> → <SingleSignOnService>
Etsi se, jonka sidonta on ”SAML:2.0:bindings:HTTP-Redirect”, ja käytä kyseisen tagin ”Location”-attribuuttia.
Esimerkiksi: https://idp.example.com/idp/profile/SAML2/Redirect/SSO
Name ID -muoto Kyllä Muoto, jota SP ja IDP käyttävät keskustellessaan subjektista.
Löytyy Shibboleth IDP:n metatiedoista kohdasta:
<IDPSSODescriptor> → <NameIDFormat> kyseisen tagin arvona. Huomaa, että jos emailAddress on käytettävissä, sitä tulee suosia ja käyttää.
Esimerkiksi: urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
Etäuloskirjautumisen URL-osoite Ei tällä hetkellä tuettu Jätä tämä arvo tyhjäksi. Shibbolethin allekirjoitusvarmenteen sormenjälki Ei, mutta
erittäin suositeltava
IDP:n varmenteen yksilöllinen sormenjälki, jota käytetään SAML-vastausten allekirjoittamisessa.
Sormenjälkeä ei ole nimenomaisesti metatiedoissa, mutta niissä on varmenne, jolla joko SAMLResponse tai Assertion on allekirjoitettu.
Katso lisätietoja tämän ohjeen osiosta Varmenteen sormenjäljen määrittäminen.
Esimerkiksi: 7j2mka9cfe2d09j23eefe01442f6a49d1222391f
Etunimen määrite Ei SAML-vastauksessa** olevan attribuutin nimi, joka kuvaa käyttäjän etunimeä.
Esimerkiksi: urn:oid:2.5.4.42
Sukunimen määrite Ei SAML-vastauksessa** olevan attribuutin nimi, joka kuvaa käyttäjän sukunimeä. - Esimerkiksi: urn:oid:2.5.4.4 Sähköpostin määrite Ei SAML-vastauksessa** olevan attribuutin nimi, joka kuvaa käyttäjän sähköpostiosoitetta.
Esimerkiksi: urn:oid:0.9.2342.19200300.100.1.3
Roolin määrite Ei SAML-vastauksessa** olevan attribuutin nimi, joka kuvaa käyttäjän roolia.
Esimerkiksi: urn:oid:1.3.6.1.4.1.5923.1.1.1.5
IT-päällikkö Ei Voit käyttää pilkuilla erotettua arvoluetteloa
Jos Roolin määrite -kentässä vastaanotettu arvo vastaa jotakin näistä arvoista, käyttäjä luodaan IT-päällikkönä.
Esimerkiksi: IT Manager
Opettaja Ei Voit käyttää pilkuilla erotettua arvoluetteloa
Jos Roolin määrite -kentässä vastaanotettu arvo vastaa jotakin näistä arvoista, käyttäjä luodaan opettajana.
Esimerkiksi: Instructor tai Instructor,Teacher,TA
Synkronoi tiedot automaattisesti käyttäjän kirjautuessa Ei Jos otettu käyttöön, aina kun käyttäjä kirjautuu Shibbolethin kautta, hänen perustietonsa päivitetään SAML-vastaustokenissa saatujen tietojen perusteella. Huomautus: Saadaksesi esimerkin SAML-vastauksesta noudata ensin tämän ohjeen Lisätyökalut-osion kohdan Hyödyllinen Chrome-laajennus SAML-tokenien virheenkorjaukseen ohjeita. Kun laajennus on asennettu, tee SAML-testikirjautuminen tämän osion vaiheessa 7 kuvatulla tavalla ja varmista, että laajennus on auki ennen kirjautumista, jotta se voi lukea SAML-vastaustokenin.
- Napsauta Luo.
- Napsauta vahvistusikkunassa OK .
- Voit tarvittaessa päivittää määritysasetuksia, jos teit virheen. Pidä muutokset napsauttamalla Tallenna .
- Voit testata määrityksen oikeellisuuden napsauttamalla Testaa SAML sisäänkirjautuminen oikeassa yläkulmassa. Tämän pitäisi avata uusi välilehti ja siirtyä Shibboleth-palvelimellesi, joka pyytää kirjautumaan sisään.
- Anna kelvolliset kirjautumistiedot ja kirjaudu sisään.
- Sinut pitäisi ohjata takaisin Luminaan uutena käyttäjänä kirjautuneena. Kirjaudu ulos uuden käyttäjän tililtä ja kirjaudu takaisin sisään IT-päällikkönä ja siirry sitten takaisin kohtaan Hallintapaneeli→ Integraatiot → SSO – Shibboleth (SAML).
- Kun olet varmistanut, että Shibboleth SSO toimii, voit halutessasi ottaa uuden todennustavan käyttöön oppilaitoksessasi. Aktivoi uusi todennustapa vasta, kun olet onnistuneesti tehnyt testikirjautumisen ja olet valmis tekemään sen käytettäväksi kaikille oppilaitoksesi käyttäjille. Napsauta tätä varten Aktivoi ja napsauta sitten OK vahvistusikkunassa.
Kaksoisintegraatio LTI:n kanssa
Jos organisaatiossasi on otettu käyttöön sekä LTI että SAML SSO -käyttö, voit halutessasi yhdistää nämä kaksi integraatiota. Oletuksena käyttäjä, joka kirjautuu sekä LTI:n että SAML:n kautta, saa kummallekin kirjautumiselle erillisen Luminan tilin. Jos LTI-palveluntarjoajasi on määritetty todentamaan käyttäjät heidän SAML-tunnuksillaan, nämä kaksi tiliä voidaan yhdistää, koska LTI-palveluntarjoaja antaa Luminalle käyttäjän yksilöllisen tunnisteen SAML-järjestelmässä.
- Määritä LMS välittämään mukautettu LTI-parametri nimeltä lis_person_sourcedid, joka sisältää ristiin täsmäytettävän SSO-arvon. Tämä voi olla sähköposti, työntekijätunnus tai jokin muu kenttä. Lumina käyttää tätä ominaisuutta yhdistääkseen molemmat kirjautumistavat samaan tiliin.
- Hanki sen SAML-vastaustokenissa käytetyn attribuutin nimi, jonka arvo vastaa LTI-palveluntarjoajan käyttämää yksilöllistä tunnistetta. Jos yksilöllinen tunniste on esimerkiksi käyttäjän sAMAccountName, linkityksen määrite voi olla 'urn:oid:1.2.840.113556.1.4.221'. Mahdolliset arvot löytyvät IDP:n attribuuttimäärityksistä.
- Syötä tämä arvo kenttään Linkityksen määrite.
- Napsauta Tallenna.
- Kun käyttäjä kirjautuu ensimmäistä kertaa Shibbolethin (SAML) kautta, Lumina etsii linkkiä LTI-tiliin linkityksen määritteen arvon avulla. Jos linkki löytyy, Shibboleth-tili yhdistetään olemassa olevaan LTI-tiliin. Muussa tapauksessa uusi tili luodaan tavalliseen tapaan. Kaikki ensimmäisen kirjautumisen jälkeiset kirjautumiset linkittyvät edelleen ensimmäisellä kirjautumisella luotuun tai löydettyyn Luminan tiliin.
Käyttö
Kun molemmat puolet on määritetty ja SAML SSO on aktivoitu, on helppoa testata, onko kaikki tehty oikein.
- Siirry organisaation Lumina-verkkotunnukseen (https://<organization>.yuja.com) ja paina Sisäänkirjautuminen. Tämän pitäisi ohjata käyttäjä Shibboleth IDP -palvelimen kirjautumissivulle.
- Anna kelvolliset tunnistetiedot ja kirjaudu sisään.
- Kun todennus on onnistunut, käyttäjä pitäisi ohjata takaisin Luminaan.
Lisätyökalut
Varmenteen sormenjäljen määrittäminen
IDP:n varmenteen sormenjälkeä käytetään lisäturvana, kun SP varmentaa IDP:ltä saapuvan SAML-vastauksen. Voit määrittää varmenteen sormenjäljen seuraavien ohjeiden mukaisesti:
- Pura Google IDP:n metatiedoista X509-varmenne. Sen pitäisi sijaita kohdassa: <IDPSSODescriptor> →<KeyDescriptor use=”signing”> → <KeyInfo> → <X509Data> → <X509Certificate>
- Kun sinulla on varmenne, siirry seuraavalle verkkosivustolle: https://www.samltool.com/fingerprint.php.
- Liitä varmenne ”X509 cert” -tekstikenttään.
- Varmista, että Algorithm-asetukseksi on valittu ”sha1”.
- Napsauta ”Calculate Fingerprint”.
- Kopioi luotu ”FingerPrint”-arvo. Tätä arvoa käytetään tietokannassa. Sormenjäljen tulisi olla 20 tavun taulukko ”sha1”-algoritmille.
Hyödyllinen Chrome-laajennus SAML-tokenien virheenkorjaukseen
Jos käytät selaimena Chromea, voit asentaa hyödyllisen SAML-laajennuksen osoitteesta: https://chrome.google.com/webstore/detail/saml-chrome-panel/paijfdbeoenhembfhkhllainmocckace?hl=en. Kun laajennus on asennettu, avaa selaimen kehittäjätyökalut (F12) ja napsauta SAML-välilehteä. Nyt kun teet SP-aloitteisen kirjautumisen, selaimen lähettämät SAML-tokenit näytetään yksityiskohtaisesti. Tämä työkalu voi olla erittäin hyödyllinen SAML-pyyntöjen ja -vastausten virheenkorjauksessa.