This information is aimed at Swedish readers. Development items put into production will be documented in English and published in the relevant place in this wiki.


Utvecklingsaktivitet

Kortfattad beskrivningSamlingsportal med länkar till e-tjänster som ingår i federationen
Status

UTVECKLING PÅGÅR

Den här utvecklingsaktiviteten bygger vidare på utvecklingsaktiviteten SSO-länkar.

För full förståelse kring portalen och hur den kan nyttjas i olika tillämpningar bör du först läsa igenom den sidan.

Nedanstående beskrivning syftar endast till att ge en översiktlig beskrivning av utvecklingsaktiviteten. Om du är intresserad av mer information, har synpunkter på lösningen eller vill bidra med idéer så kan du kontakta federationsoperatören på info@skolfederation.se eller info@sambi.se.

Bakgrund

Många användarorganisationer använder sig av någon form av portal för att presentera relevanta länkar till e-tjänster för sina användare. En av flera fördelar är att användaren har en samlingsplats för de tjänster som ska kunna nås. En annan fördel är att användaren, via portalen, kan nå tjänster utan att nyttja en anvisningstjänst i federativa lösningar med flera IdP:er.

Organisationer som redan har någon plattform där denna typ av länkar publiceras kan dra direkt nytta av utvecklingsaktiviteten SSO-länkar.

Utvecklingsaktiviteten som beskrivs på denna sida syftar till att förenkla för de organisationer som saknar en plattform för publicering av länkar till e-tjänster.

Lösning

Bilden nedan visar ett exempel på hur tjänsteportalen kan se ut.

Respektive kort i bilden är ett klickbart element som pekar på angiven e-tjänst med hänvisning till användarens IdP. Elementen i korten byggs upp av informationen i de JSON-feeder som beskrivs under utvecklingsaktiviteten SSO-länkar, och består kortfattat av:

  • URL till e-tjänsten med hänvisning till användarens IdP och målsida för e-tjänsten (SSO-länk)
  • Bildelement (logotyp) för e-tjänsten
  • Visningsnamn för e-tjänsten
  • E-tjänstens organisationsnamn
  • Kort beskrivning av e-tjänsten


Portalen byggs upp av följande komponenter:

JavaScript

Lättviktigt script vars övergripande funktioner är att:

  • läsa in informationen från JSON-feeder i utvecklingsaktiviteten SSO-länkar
  • konkatenera parametrar för respektive e-tjänst med parametrar för användarens IdP för att bygga fullständiga SSO-länkar
  • generera HTML för "länkkorten" med bildelement och beskrivning av respektive e-tjänst

HTML

Mycket lättviktig HTML som utgör grunddokumentet för den HTML som genereras av JavaScriptet.

CSS

Lättviktig CSS för visuell utformning av HTML-sidan.


Samtliga komponenter utgörs av statiska filer och kräver därför ingen CMS eller server för att fungera, även om de givetvis måste publiceras på något sätt.

Komponenterna kan användas tillsammans i sin helhet, eller i valda delar som kombineras med egen kod. Varje komponent kan modifieras för anpassning till egna lösningar.

Exempel på tillämpningar

Central tjänsteportal

Federationsoperatören tillhandahåller en central tjänsteportal med federationens samtliga tjänster.

I denna tillämpning så behöver användaren ange organisatorisk tillhörighet för att portalen ska kunna hänvisa till rätt IdP. Detta kan göras genom ett aktivt val av användaren eller genom att användaren besöker portalen via en URL med relevant IdP som parameter (för att användaren ska slippa ange organisation).

Användarupplevelsen är, av flera anledningar, inte optimal. Bland annat då portalen listar federationens samtliga tjänster (vilket sannolikt inte är relevant för användaren).

Det huvudsakliga syftet med portalen är att fungera som demonstration av en portal med SSO-länkar och att utgöra en referens för kompatibilitet. Portalen kan dock tänkas användas i produktion för exempelvis organisationer som saknar resurser att anpassa portalen, eller under en övergångsperiod för organisationer som ännu inte hunnit skapa en anpassad portal.

Lokal tjänsteportal

Komponenterna i tjänsteportalen kan nyttjas på olika sätt för att bygga en lokal tjänsteportal. I sin enklaste form kan HTML-dokumentet laddas ner och publiceras på valfri plats (eller till och med köras från desktop även om det givetvis inte är en rekommenderad lösning).

Dokumentet kommer att läsa in JSON, JavaScript och CSS från federationsoperatören och portalen kommer att ha samma funktionalitet. I en lokal portal vill man troligtvis förändra vissa saker, exempelvis förkonfigurerat IdP-val, enbart lista de tjänster som är aktuella, anpassa utseende med mera. Det kan lösas genom att även ladda ner JavaScript och CSS och göra anpassningar i dessa.

Rekommenderad tillämpning

I första hand rekommenderas att portalen integreras i befintliga lösningar (om sådana finns). Det görs då genom att läsa in informationen i de JSON-feeder som beskrivs i utvecklingsaktiviteten SSO-länkar och hantera utifrån förutsättningar i den befintliga lösningen. Vid behov kan valda delar av komponenterna JavaScript, HTML och CSS användas.

Möjlig vidareutveckling

  • Den centrala tjänsteportalen kan utvecklas för att kunna anpassas till respektive användarorganisation i federationen, men eftersom grundprinciperna för portalen är att den ska vara lättviktig och bygga på statiska filer så är den typen av vidareutveckling något begränsad. Andra utvecklingsaktiviteter ger dock förutsättningar för bättre anpassningar (se nedan).
  • Utvecklingsaktiviteten Individuella metadataströmmar ger möjlighet till att även utveckla individuella metadataströmmar. Med sådana på plats kan lokala portaler och den centrala portalen anpassas och konfigureras i federationens administrativa verktyg (Federationsadmin). Detta ligger dock en bit in i framtiden.
  • Anpassad version för lokal tillämpning. Förenklad lokal tillämpning med konfigureringsverktyg för val av presenterade e-tjänster med mera.
  • Portal i form av progressiv webbapp med lokal anpassning.
  • Portal i webbläsartillägg.
  • Kodbibliotek med snippets för att använda fragment av lösningen i olika tillämpningar.
  • Tillägg till CMS:er (exempelvis WordPress och Sitevision) och anpassning av plattformar som exempelvis Arena för lärande.

Övrig information

Mockup: https://fedport2.robertsundin.se/

Kod: https://github.com/rob1sun/fedport2 OBS! Syftet med koden är att ta fram en mockup. Den använder dummydata och är inte skriven av utvecklare - använd inte till något annat än test. Produktionsduglig kod kommer framöver.

Dummy JSON: https://fedfeeds.robertsundin.se/

Write a comment…