Federationer – en utspridd nätidentitet

Ska du boka tid för ett läkarbesök åt ditt minderåriga barn behöver vårdcentralens datorer vara säkra på att du är förälder till barnet.

Ska du lämna in deklarationen för bostadsrättsföreningen där du är ordförande behöver Skatteverkets webbtjänst kunna verifiera att du är behörig att göra det.
Är du elev på en skola behöver läromedelsförlaget inte veta vem du är när du vill läsa i den digitala läroboken på nätet, bara att du är går på en skola som är betalande kund.

Ett identitetssystem som bara delar med sig av den information som är nödvändig i en viss situation går att konstruera. Det kallas för en identitetsfederation, ett samarbete mellan flera olika parter som resulterar i en väldigt flexibel lösning som erbjuder gott om möjligheter till smarta finesser och nya funktioner, samtidigt som den personliga integriteten är skyddad.

Först ett exempel som varit i drift i flera år, för att konkretisera tankarna bakom och möjligheterna med en federation: Det är inte ovanligt att anställda och studenter vid svenska högskolor och universitet besöker andra lärosäten än det egna. Ofta behöver de då komma åt ett trådlöst nätverk från sina bärbara datorer. En lösning är att varje universitet och högskola delar ut tillfälliga konton till sina besökare. Det fungerar, men är omständligt och dyrt eftersom någon måste kontrollera besökarens identitet, förklara vilka regler som gäller och skapa kontot. Men någon som studerar på Kungliga Tekniska Högskolan eller forskar på Lunds Universitet borde väl vara betrodd att använda det trådlösa nätverket på Chalmers under ett besök i Göteborg, utan att först besöka receptionen och legitimera sig där?

Lösningen heter Swamid och är ett samarbete mellan högskolor och universitet i Sverige och andra länder som gör just den resursdelningen möjlig. Skolorna har helt enkelt bestämt sig för att lita på varandras studenter och personal.

I praktiken har skolorna som deltar i Swamid kommit överens om två saker: Vad som ligger i begreppet identitet och vilken teknik som ska användas.

Överenskommelserna som bygger en federation

Att ha en entydig definition på vad som är en användare och under vilka förutsättningar ett användarkonto delas ut och stängs av är viktiga grundstenar i en federation. Samma regler måste gälla hos alla de organisationer som deltar i federationen. Inte minst är detta viktigt för att användarna ska veta vilka regler som gäller, vad man får och inte får göra och under vilka förutsättningar ett konto kan stängas av. En annan viktig aspekt är hur användarnas identitet kontrolleras när kontouppgifterna delas ut. Så länge alla parter först gör en id-kontroll och sen delar ut kontouppgifter fungerar federationen, men det räcker med att en part slarvar med kontrollen för att den genast ska få en svag punkt.

Vad den överenskommelse som lägger grunden för en federation omfattar varierar från federation till federation. Men vissa grundläggande saker återfinns alltid:

Tillit
Ingående parter måste känna att de kan lita på varandra. Därför behövs bland annat bestämmelser för hur nya användare läggs till i federationen.

Attribut
Uppgifter om användarna i en federation behövs ofta för att den ska kunna uppfylla sitt syfte. Med hjälp av så kallade attribut går det exempelvis att ange om en användare är lärare eller elev och utifrån det kan tjänsteleverantörer bestämma vilka delar av tjänsten som användaren ska få tillgång till.

Standarder för teknik
De överenskommelser som görs i ett konferensrum ska konkretiseras i form av tekniska implementationer, och då krävs standarder som definierar hur det ska gå till.

En gemensam infrastruktur
Den faktiska tekniken som knyter ihop federationsoperatören, identitetsleverantörerna och tjänsteleverantörerna med varandra.

Delarna i en federation

En identitetsfederation består av flera delar. Det behövs minst en identitetsleverantör, som sköter databaser med användaruppgifter och låter användarna identifiera sig. Det behövs minst en tjänsteleverantör, som erbjuder tjänster till användarna. Ofta finns det också en federationsoperatör som har ett övergripande ansvar för federationen. Om det finns flera olika identitetsleverantörer finns det också en anvisningstjänst. Anvisningstjänsten håller koll på vilka identitetsleverantörer som är med i federationen och hjälper på olika sätt användarna att hitta ”sin” leverantör.

I en federation är det alltså identitetsleverantören som har ansvaret för att kontrollera en användares identitet. Från identitetsleverantören får tjänsteleverantörerna reda på om användaren har identifierat sig på ett godkänt sätt. Men det kan också följa med information om behörighetsnivåer och annat, så kallade attribut. Utifrån dessa attribut kan tjänsteleverantören bestämma vilka funktioner som användaren ska få tillgång till. I ett system för skolbetyg kan det till exempel innebära att en elev bara får se sina egna betyg. En lärare kan däremot ändra betyg, men bara för de klasser som de undervisar i.

För tjänsteleverantörerna är det här en stor fördel. I nätets barndom var varje tjänsteleverantör tvungen att också vara sin egen identitetsleverantör och bygga upp en databas över sina egna användare. Det var inte bara databasen med användare som behövde skapas, utan också olika tekniska lösningar för att sköta inloggningen. Det billiga och enkla sättet var givetvis ett vanligt lösenord, medan säkrare alternativ som engångskoder och liknande är både dyrare och mer komplicerade. Att ha ansvaret för användardatabasen kostar också i form av support, när användare hör av sig med bortglömda lösenord eller av andra anledningar inte lyckas logga in. I en federation hamnar den typen av frågor i stället hos identitets­leverantören.

I relationen mellan identitetsleverantör och tjänsteleverantör finns en överenskommelse om hur lyckade inloggningar ska kommuniceras mellan parterna. Däremot finns inget som specificerar vilka tekniska lösningar som användarna ska kunna välja att använda för att legitimera sig. Det innebär att identitetsleverantörerna kan följa den tekniska utvecklingen och lägga till nya inloggningsmetoder i takt med att de dyker upp och får spridning på marknaden.

Men uppgiften om hur användaren loggat in finns med i den information som identitetsleverantören skickar till tjänsteleverantören. Det innebär att tjänsten kan anpassas efter säkerhetsnivån i inloggningen. Om användaren bara knappat in ett vanligt lösenord får hen bara tillgång till en begränsad del av tjänsten, medan en tvåfaktorsinloggning krävs för att få tillgång till alla funktioner i tjänsten.

Ytterligare en part kan ingå i en federation, en så kallad registerhållare. Medan identitetsleverantörernas enda uppgift är att verifiera att personer är de som de utger sig för att vara kan registerhållarna ha annan information om personerna lagrad, till exempel om en person är student eller inte.

Nu ska två av fördelarna med en federation förhoppningsvis vara tydliga:

Förlaget behöver inte hålla en egen databas med användarinformation uppdaterad. Den delen står i stället de skolor som är anslutna till federationen för. Det besparar förlaget investeringar i teknik och kostnader för drift och underhåll av kunddatabasen, och gör att bolaget inte heller behöver lagra personuppgifter.
Förlaget behöver heller aldrig få reda på Kajsas personnummer eller annan information som kan användas för att identifiera ­henne. Förlaget får i stället bara reda på att hon är elev på en skola som är betalande kund och en pseudonym som gör det möjligt att personanpassa sajten. Vid missbruk eller problem kan förlaget vända sig till skolan för att få reda på vem personen med en viss pseudonym är.

Allt det här sker automatiskt i bakgrunden, utan att Kajsa märker vad som händer. För henne ser processen ut som vilken vanlig inloggning som helst.

Pengar att spara och integritet att skydda

Pengar är ofta en stark drivkraft för att bygga en identitetsfederation. Att göra id-kontroller är kostsamt. Det uppenbara är investeringar i teknik som i slutänden måste finansieras av användarna. Men det finns också mindre uppenbara kostnader, till exempel för att driva och underhålla databasen med användaruppgifter. En stor fördel med en identitetsfederation är att informationen om den enskilda användaren bara behöver finnas på ett ställe. Det gör att de sammanlagda underhållskostnaderna minskar. Med standardiserad teknik för id-kontroller och ett system där olika aktörer litar på varandra kan kostnaderna pressas.

Men det är inte bara direkta kostnadsbesparingar som ligger bakom önskemålen. Enklare utveckling är ett annat argument. Om tjänsteleverantörerna tar hjälp från en identitetsleverantör för att göra id-kontrollerna behöver inte tjänsteleverantören på egen hand hänga med i teknikutvecklingen. Om identitetsleverantör och tjänsteleverantör bara kommit överens om hur identitetsinformationen ska utbytas dem emellan kan identitetsleverantören använda vilken teknik som helst för att låta användarna identifiera sig.

En annan fördel är att det system som vill veta om användaren är behörig inte nödvändigtvis behöver få reda på vilken individ det är som vill ha tillgång till tjänsten. I skolexemplet tidigare i det här kapitlet fick förlaget aldrig reda på Kajsas faktiska identitet. I stället användes en persistent pseudonym.

Det finns gott om tillfällen när den enskildes identitet egentligen är helt ointressant. Ett tänkbart exempel är ett företag som vill låta sina anställda komma åt information i en databas på nätet, som kostar pengar. Med en federationslösning kan man då tänka sig att det enda tjänsteleverantören får veta från identitetsleverantören är om användaren jobbar på företaget X eller inte. Detta ger ett starkare skydd för den personliga integriteten. Och med pseudonymer, som finns i både persistent och transient utförande går det att lösa.

Med persistenta pseudonymer får varje användare samma pseudonym varje gång hen loggar in via identitetsleverantören. Det ­innebär att tjänsteleverantören kan personanpassa användarupplevelsen, utan att veta vem användaren är. Kopplingen mellan individ och pseudonym finns bara hos identitetsleverantören, som vid behov, exempelvis vid missbruk, kan tala om för tjänsteleverantören vem som står bakom en viss pseudonym.

Transienta pseudonymer är olika vid varje inloggning och kan alltså användas i tjänster där personanpassning inte behövs.

Anvisningstjänster visar användaren vägen till inloggningen?

I en federation med två eller fler identitetsleverantörer krävs ofta en anvisningstjänst, en central lista över de identitetsleverantörer som finns och som användarna får välja bland när de ska logga in.

Tekniskt är det en lösning som fungerar, den kan också innebära problem för användarupplevelsen. I stora federationer kan det framför allt innebära att listan med tillgängliga identitetsleverantörer blir väldigt lång.

Vill man underlätta för användarna finns det några tekniska grepp att ta till:

  1. Se till att användarna är identifierade redan när de kommer till tjänsten. Hos de organisationer som utnyttjar en viss tjänst går det att bygga en portal där användarna loggar in och sedan får välja bland de tjänster som finns tillgängliga.
  2. Om en användare kommer direkt till tjänsteleverantören utan ett giltigt identitetsintyg kan exempelvis användarens ip-adress utnyttjas för att göra en gissning om vilken identitetsleverantör hen är ansluten till.
  3. En tjänsteleverantör kan också bygga en egen anvisningstjänst som i ett standardutförande bara visar ett begränsat urval av de identitetsleverantörer som är anslutna till federationen. Denna lista kan skapas dynamiskt och utifrån olika kriterier, till exempel besökarens ip-adress, innehålla de mest sannolika alternativen.

En inloggning till alla läromedel

För en elev som vill utnyttja ett digitalt läromedel som skolan betalar för skulle inloggningen kunna gå till så här, med hjälp av Skolfederation:

  1. Kajsa Karlsson knappar in förlagets webbadress i webbläsaren.
  2. Förlagets webbtjänst ser att Kajsa Karlssons ip-adress stämmer överens med en av de skolor som är anslutna till Skolfederation och som dessutom är betalande kund hos förlaget.
  3. I Kajsa Karlssons webbläsare dyker en inloggningsruta upp. Hon kan inte se det, men i själva verket är det här en inloggning som sker mot hennes skolas servrar. Skolan agerar nämligen identitetsleverantör i Skolfederation.
  4. När Kajsa Karlsson loggat in skickar hennes skola ett identitetsintyg till läromedelsförlaget. Det innehåller två viktiga faktauppgifter: Förlaget får reda på att Kajsa faktiskt är behörig användare och i vilken årskurs hon går. Därmed kan webbtjänsten anpassas så att rätt läromedel visas. Identitetsintyget innehåller också vad som kallas för en persistent pseudonym. Läromedelsföretaget behöver inte känna till Kajsas identitet. Däremot är det bra om läromedelsföretaget känner henne under ett påhittat namn. När användare 435234xer35 loggar in vet de hur långt i historieboken personen hade kommit och kan hoppa direkt till rätt sida. Med hjälp av pseudonymer kan en federation på detta sätt stärka individens integritet samtidigt som möjligheten till en personanpassad upplevelse finns kvar.
  5. I stället för att gå direkt till förlagets webbplats kan Kajsa också gå via skolans portal. Där loggar hon först in i sitt konto på skolan och blir samtidigt, utan att hon märker det, autentiserad mot Skolfederation. På portalen kan en lista med de tjänster som finns tillgängliga via federationen visas, tillsammans med tjänster som skolan upphandlat vid sidan av Skolfederation. Från listan väljer hon den tjänst hon vill använda och klickar sig vidare.

Vinster med en federation

Vad nyttan med en federation är beror på perspektiv. För användare och deras organisationer finns vissa fördelar, för tjänsteleverantörer andra. Till detta kommer också branschövergripande vinster.

  • Nytta för användare: Rätt implementerad stärker en federation användarens integritet. Enklare lösenordshantering och ett single sign on-förfarande förenklar vardagen. Inga nya konton måste skapas.
  • Nytta för organisationer: En förenklad administration av användarkonton när de finns samlade i en databas och inte hos alla de tjänster som användarna utnyttjar. Minskar till exempel risken för att anställda som slutat fortfarande har åtkomst till tjänster.
  • Nytta för tjänsteleverantörer: De behöver inte längre administrera användarkonton, utan kan fokusera på sin kärnverksamhet. Säkerheten ökar eftersom en användares identitet kollas en gång, på ett tillräckligt säkert sätt.
  • Nytta för branschen: Om flera tjänsteleverantörer och brukarorganisationer samlas i en federation kan det driva utvecklingen i branschen som helhet. En federation med många skolor anslutna kan exempelvis göra det mer attraktivt för förlag att börja jobba med digitala läromedel, eftersom tröskeln för att nå ut med dem sänks. I ett större perspektiv innebär en federation minskade kostnader, eftersom både teknik och data-baser kan återanvändas.