Haka-palveluna toimivan tunnistuslähteen päättelypalvelun (Identity Provider discovery service) voi nyt upottaa palvelun etu- tai kirjautumissivulle.
Perinteinen DS-palvelu toimii erillisenä web-sivuna, jonne käyttäjä ohjataa esim. Haka-logoa tai kirjautumislinkkiä painamalla. Etusivulle upotettavasta Haka-DS -valintalistasta käyttäjä pääsee suoraan valitsemaan oikean tunnistuslähteen. Uusi palvelu parantaa Haka-kirjautumisen käytettävyyttä vähentämällä klikkausten ja sivulatausten määrää.
Upotettava Haka-DS perustuu palvelun sivulle lisättävään JavaScript-koodiin. Myös upotettavassa päättelypalvelussa hyödynnetään keskitettyä Hakan DS-palvelinta edellenohjauksen tekemiseen. Upotettavan päättelypalvelun valintalista on sama kuin perinteisessä keskitetyssä palvelussa, mutta siihen voidaan tehdä muutoksia palvelukohtaisella konfiguroinnilla.
Valintalistan upottaminen sivulle
- Lataa tästä linkistä kofiguraatiotiedosto ja avaa se muokattavaksi tekstieditoriin. Testipalvelussa käytä tätä konfiguraatiotiedostoa.
- Täydennä vähintään "Essential Settings" -osio. Myös "Recommended settings"-osio suositellaan tarkistettavan. Tiedostossa on paljon hyödyllisiä konfiguraatiovaihtoehtoja, joihin kannattaa tutustua. Esim. eniten käytetyt tunnistuslähteet voi nostaa listan kärkeen tai listasta voi poista tunnistuslähteitä, joita ei haluta näyttää.
- Lisää muokkaamasi JavaScript-koodi haluamallesi palvelun sivulle HTML-koodiin. Konfiguraatioscriptin voi myös tallentaa erilliseksi .js-tiedostoksi, mutta poista tässä tapauksessa <script>-elementit ja <noscript>-elementit sekä niiden välissä oleva teksti. Tallenna .js -tiedostoon ainoastaan puhdas JavaScript-koodi. JS:n kommentit tiedostoon voi jättää.
- Jos tallennat konfiguraation erilliseen .js -tiedostoon, muista lisätä se ja upotettava Haka-DS -skripti palvelun sivulle HTML-koodiin esim. seuraavasti:
<script type="text/javascript" src="embedded-wayf.js"></script>
<script type="text/javascript" src="https://haka.funet.fi/shibboleth/wayf.php/embedded-wayf.js"></script>
Huomioi seuraavat asiat
- Jos upotettava DS sijoitetaan sivun oikeaan tai alareunaan, käyttäjän selain ei ehkä pysty näyttämään alasvetovalikkoa kokonaisuudessaan.
- Jos upotettava DS sijoitetaan eri palvelimelle, jossa varsinainen SAML-SP sijaitsee, upotettava DS ei ehkä pysty selvittämään, onko käyttäjällä olemassaoleva istunto. Tässä tapauksessa voi olla, että myöskään 'wayf_use_disco_feed'-valintaa ei voi käyttää.