2.5 SAD - IdP
Inledning
Nomenklatur
Begrepp | Definition |
---|---|
Autentisering | Kontroll av uppgiven identitet, t.ex. vid inloggning, vid kommunikation mellan två system eller vid utväxling av meddelande mellan användare |
Auktorisation / Behörighetskontroll | Kontroll av att en Autentiserad entitet (person eller system) är behörig att komma åt en begärd resurs. |
e-legitimation, e-identitet, e-id | Elektronisk legitimation. Används för att identifiera en person eller ett system. T.ex. ett användarcertifikat på ett smartkort. |
SITHS | Identifieringstjänst SITHS, en säkerhetslösning som används för att utfärda elektroniska identitetshandlingar (e-identiteter) till både personer och system. |
SITHS eID | Den nya generationen SITHS e-identiteter, kan finnas både på smartkort och på mobila enheter. |
Mobilt SITHS eID | SITHS eID på mobila enheter. |
SITHS eID-klienter | SITHS eID Windowsklient och SITHS eID Mobilklient. Användarklienter på dator repektive mobila enheter som låter användare använda SITHS eID på kort eller i en mobil enhet för legitimation och underskrift. |
CA (Certification Authority) | Certifikatutfärdare. System som utfärdar certifikat för användare och system. |
OCSP/CRL | Protokoll för revokeringskontroll av certifikat. |
LoA, Tillitsnivå | Level of Assurance. Grad av säkerhet och tillförlitlighet för en given e-legitimation. Ju högre tillitsnivå en e-legitimation har desto säkrare är den, både när det gäller teknisk och administrativ säkerhet. |
SAML | Security Assertion Markup Language – XML-baserat ramverk för skapande och utfärdande av autentiserings- och attribut-information mellan between betrodda system över internet. |
OIDC | OpenID Connect – internetcentrerat, federerat identitets- och autentiseringsprotokoll utökandes behörighetsramverket OAuth2.0 och det kryptografiskt systemet ’JSON Object Signing and Encryption’ (JOSE) |
E-tjänst | System som erbjuder en funktionalitet för användare eller andra system. |
IdP (Identity Provider) | Komponent i infrastrukturen som efter godkänd autentisering av en användare, tillhandahåller elektroniska intyg (SAML biljett alternativt ”ID token” inom OIDC) med identitet och attribut tillhörande användaren och/eller hens organisation. Syftar i detta dokument även på OpenID Provider (OP) för OIDC. |
SP (Service Provider) | E-tjänst som begär och erhåller elektroniska intyg för en användare från en IdP. Oftast en e-tjänst som tillhandahåller funktionalitet och information till användare. Syftar i detta dokument även på Relying Party (RP) för OIDC. |
OP (OpenID Provider) | OIDC-term. Se IdP. |
RP (Relying Party) | OIDC-term. Se SP. |
Katalogtjänst HSA | Användarkatalog. Datakälla för information om vårdpersonal, inklusive behörighetsinformation. |
Autentiseringstjänsten | Infrastrukturkomponent som förmedlar autentiseringsbegäran mellan IdP och SITHS eID-klienter, samt förmedlar begäran om certifikatsutfärdande mellan SITHS eID Mobilklient och Utfärdandeportalen. |
Utfärdandeportalen | Infrastrukturkomponent som låter användare utfärda Mobilt SITHS eID, och som förmedlar certifikatsbegäran och certifikat till och från CA. |
Underskriftstjänsten | Infrastrukturkomponent som tillhandahåller underskrift för e-tjänster, via IdP, Autentiseringstjänsten och användarnas SITHS eID-klienter. |
Claim | OIDC-term. Ett användar- eller autentisreingsattribut som RP efterfrågar i sin autentiseringsbegäran till OP. |
Scope | OIDC-term. Omfång eller omfattning av ett eller flera claims. |
JWT | JSON Web Token, datatyp innehållandes nycklar:värdepar för roll- eller attributbaserade säkerhetsmodeller. |
Syfte
IdP:n syftar till stödja e-tjänster/applikationers behov av s k stark autentisering och behörighetshantering.
- Att tillhandahålla en implementation av en s k Identity Provider, IdP, enligt referensarkitekturen för identitet och åtkomst [S1].
- Att tillhandahålla en nationell tjänst som ger ett gemensamt sätt att utföra autentisering och tillhandahålla underlag för behörighetsstyrning för e-tjänster.
- Att tillhandahålla en tjänst till regionala och lokala intressenter som vill installera och drifta en egen instans av tjänsten.
- Att på ett enhetligt, och distribuerat sätt, via HSA, kunna administrera behörighetsstyrande attribut.
Målgrupp
De huvudsakliga målgrupperna för detta dokument är: systemägare, systemförvaltare, systemarkitekter och utvecklingsteam samt Inera Arkitektur.
Referenser
Nyttjade plattformsfunktioner
Ref | Dokument ID | Dokument inom kategori |
---|---|---|
P1 | HSA | HSA används i lösningen för att tillhanda kvalitetssäkrade uppgifter om personer och funktioner/system. |
P2 | SITHS | SITHS-kort används för säker inloggning, ger stöd för stark autentisering av användare. |
P3 | Autentiseringstjänsten | |
P4 | Underskriftstjänsten | /wiki/spaces/UST/pages/3475212609 |
P5 | LoA administration | LoA administration |
Nyttjade tjänstekontrakt
Ref | Dokument ID | Dokument inom kategori |
---|---|---|
T1 | HSA TK | Nationella tjänstekontrakt (TK) för integration med HSA-katalogen: infrastructure:directory:authorizationmanagement
infrastructure:directory:employee
|
T2 | Autentiseringstjänstens Relying Party API | Autentiseringstjänstens API-dokumentation (swagger) |
Styrande dokument
Ref | Dokument ID | Dokument länk |
---|---|---|
S1 | ARK_0046 | Referensarkitektur - Identitet och åtkomst |
S2 | ARK_0019 | Referensarkitektur för vård och omsorg - T-boken Rev. B |
S4 | ARK_0060 | Referensarkitektur för elektronisk underskrift och stämpel |
S5 | SAML2 | |
S6 | OIDC | |
S7 | SAMBI | https://www.sambi.se/teknik/ |
S8 | SAML-profil | SAML-Profil |
S9 | OASIS | https://www.oasis-open.org/ |
S10 | SwedenConnect | https://swedenconnect.se/tekniskt-ramverk.html |
S11 | Sweden Connect Deployment Profile (2019-308) | Deployment Profile for the Swedish eID Framework |
Stödjande dokumentation
Ref | Dokument ID | Dokument/länk |
---|---|---|
R1 | RIV-TA | |
Arkitekturell översikt
Tjänsten är baserad på två standarder, SAML2.0 samt OpenID Connect (OIDC). Dessa kan båda tillgodose tjänstens syfte, men gör så med två olika tekniska ramverk. SAML är den äldre av dessa två och har använts under en längre tid inom vården och de nationella tjänsterna. OIDC är en nyare teknik som bygger på OAuth2 standarden.
En användare som vill autentisera sig via tjänsten gör detta genom att presentera ett personligt eID. Detta kan exempelvis vara ett SITHS-certifikat. Aktörens e-id kan förmedlas med olika protokoll avsedda för autentisering (mTLS, WebAuthn eller dylikt). Aktörens attribut inhämtas från HSA-katalogen (nationell eller lokal beroende på installation). Identitetsbärare kan vara ett fysiskt kort.
Vid lyckad autentisering erhåller den e-tjänst som begärde autentiseringen att giltigt intyg enligt önskad standard (SAML2.0 eller OIDC).
Övergripande flöde
Personal vill nyttja en e-tjänst som kräver autentisering och behörighet.
- Aktören måste vid ett tidigare tillfälle ha erhållit ett personligt eID, av en för IdP:n pålitlig utfärdare.
- Aktören försöker ansluta till e-tjänsten.
- E-tjänsten kräver autentisering av aktören via IdP.
- IdP kräver att aktören autentiserar sig genom någon av de tillgängliga autentiseringsmetoderna.
- Aktören identifierar sig med sitt e-id genom att ange tillhörande legitimeringskod eller liknande (t.ex. fingeravtryck eller annan biometri) i sin autentiseringsklient..
- IdP:n säkerställer att certifikatet är giltigt.
- Personliga och behörighetsstyrande attribut inhämtas via HSA-katalogen (genom RIV-TA tjänster).
- Intyg i form av SAML-assertion eller ID-token förmedlas till e-tjänsten som behörighetskontrollerar och avgör access till aktören.
Bilden illustrerar ett typiskt autentiseringsflöde med tillhörande tjänsteintegrationer.
Arkitekturen är baserad på standarderna SAML2.0 samt OIDC. E-tjänsterna kopplar sitt säkerhetslager (SP/RP) mot IdP via något av dessa protokoll. Själva IdP:n är dock bara en liten del av hela infrastrukturen för att utföra en autentisering och erhålla behörighetsstyrande attribut. Scopet för denna SAD är enbart IdP, men följande delar ingår i infrastrukturen för identitet och åtkomst.
E-tjänster | De tjänster/system som vill använda IdP för att autentisera sina användare |
Certifikatsutfärdare | Utfärdar certifikat till användare. Hanterar även revokering av dessa. |
Regional HSA Förvaltning | Förvaltar lokal HSA-katalog. Replikering till Nationell HSA. |
Nationell HSA Förvaltning | Förvaltar nationell HSA-katalog. Det är gentemot denna som IdP hämtar användares attribut. |
Internetstiftelsen i Sverige (IIS) | Ansvarar för federationen SAMBI. IdP kan hämta ner federerat metadata härifrån. |
Autentiseringstjänst | Förmedlar autentisering med SITHS eID |
Utfärdandeportal | Utfärdar mobila certifikat för SITHS eID |
Bilden illustrerar de parter som är en del av Identitets och åtkomst integrationerna för IdP.
IdP tillhandahåller (vid lyckad autentisering) en SAML-Assertion eller ID-token (beroende på den standard som används av e-tjänsten) innehållande attribut från HSA-katalogen. Detta kan vara attribut kopplade till personen, ett medarbetaruppdrag, eller administrativa uppdrag. E-tjänsten använder sedan dessa attribut för att utföra behörighetskontroll och hantera användarinformation vid exempelvis presentation i dess tjänst eller vid audit-loggning.
Detaljerad information för SAML och OIDC är definierade i:
Förutom funktion för SAML och OIDC så tillhandahåller IdP ett GUI för administration av tjänsten. Se "Administrationsgränssnitt" senare i dokumentet.
Arkitekturella mål
Mål
- Följsamhet mot "Referensarkitektur för identitet & åtkomst" [2.5 SAD - IdP#refs]
- Följsamhet mot Nationella IT-strategin, enligt T-Boken [2.5 SAD - IdP#refs]
- Följsamhet mot de OASIS standarder som berörs [2.5 SAD - IdP#refs]
- Följsamhet mot ”SAMBI SAML Profil” [2.5 SAD - IdP#refs]
- Följsamhet mot SAMBI:s tekniska ramverk [2.5 SAD - IdP#refs]
- Följsamhet mot OpenID Connect [2.5 SAD - IdP#refs]
- Följsamhet mot HEART profile for OpenID Connect [2.5 SAD - IdP#refs]
Planerade avsteg
Frånsteg från ovan givna mål kan behöva göras för att tillgodose kravställning från Inera, eller i de fall två profiler är motstridiga i sina uppgifter.
Prioriterade områden
- Skapa en tjänst baserad på etablerade ramverk och tekniker. Detta för att minska långsiktiga förvaltningskostnader och underlätta utvecklingsarbetet.
- Basera tjänsten på standardprotokoll och följa specifikationer med så få avsteg som möjligt.
- Utveckla tjänsten för att fungera i en moduliserad driftmiljö - Paas. Detta för att minimera kostnader, underlätta deploy, möjliggöra anpassad skalning m.m.
- Ej bygga in "onödig" funktionalitet i tjänsten, utan nyttja externa tjänster där de lämpar sig bäst. Exempelvis för övervakning av metrics och logginsamling/sökning. Detta för att minska utvecklings och förvaltningskostnader, samt att externa tjänster oftast har mycket bättre funktionalitet än vad som kan byggas in i applikationen för rimlig kostnad.
- Undvika proprietära lösningar som kan försvåra flytt av förvaltning.
Följsamhet till T-boken
Följsamhet mot T-bokens styrande principer
IT2: Informationssäkerhet | |
Förutsättningar att uppfylla | Uppfyllnad |
---|---|
Verksamhetskritiskt IT-stöd designas för att möta verksamhetens krav på tillgänglighet vid frånfall av ett externt beroende. Ju fler beroenden till andra komponenters tillgänglighet, desto lägre egen tillgänglighet. | Applikationen är utvecklad för att fungera i PaaS miljö (containerbaserad) för att skapa maximal flexibilitet gällande tillgänglighet. Applikationen tillämpar lös koppling för att integrera komponenter.
Då applikationen i sig har till uppgift att förmedla identifierande/behörighetsstyrande attribut innebär ett bortfall av externa tjänster att applikationens uppgift inte kan uppfyllas. |
Verksamhetskritiska gemensamma stödtjänster (t.ex. tillgång till behörighetsstyrande information) erbjuder möjlighet till lokala instanser som med tillräcklig aktualitet hålls uppdaterade med gemensam master. | Applikationen är en identifierings- och auktoriseringstjänst.
|
Krav mellan integrerade parter måste regleras, informationsägaren ska godkänna att ett visst system får agera mot informationen genom ett visst tjänstekontrakt. Exempelvis skall enligt integrationsprocessen för den gemensamma tjänsteplattformen ett överenskommelsesnummer för en integrationsöverenskommelse registreras i samband med att man "öppnar dörren" för en viss tjänstekonsument mot en viss kombination av informationsägare och tjänstekontrakt. | Applikationen informationsförsörjs via nationella RIV-TA tjänstekontrakt. Anslutningsprocess för HSA RIV-TA sker via informationsägaren. Anslutning för e-tjänst gentemot applikationen sker via anslutningsavtal genom Inera. |
Arkitekturen måste möjliggöra tillräcklig tillgänglighet vid flera samverkande system. | Applikationen är utformad för en hög tillgänglighet med horisontell skalning i PaaS miljö. Respektive tjänsteproducent av tjänstekontrakt skall leverera enligt SLA. |
En sammantagen tolkning av tillämpliga lagar och förordningars konsekvenser för teknisk realisering av informationsfångst, utbyte och lagring. | Tjänsten hanterar personuppgifter.
|
Förutsättningar för spårbarhet etableras i form av loggningsregler för komponenter som deltar i säkert informationsutbyte. | Se kapitel: Spårbarhet. |
Interoperabla, internationellt beprövade och för leverantörer tillgängliga standarder tillämpas för kommunikation mellan parter som har upprättat tillit. | Applikationen tillämpar standardprotokoll.
|
IT3: Nationell funktionell skalbarhet | |
Förutsättningar att uppfylla | Uppfyllnad |
---|---|
Nationella tjänstekontrakt definieras med nationell täckning som funktionell omfattning. Det är möjligt för ett centraliserat verksamhetssystem som användas av alla verksamheter i Sverige att realisera varje standardiserat tjänstekontrakt. Det får inte finnas underförstådda funktionella avgränsningar till regioner, kommuner, landsting eller andra organisatoriska avgränsningar i nationella tjänstekontrakt. | Applikationen informationsförsörjs via nationella tjänstekontrakt (HSA) med SOAP-WS. |
SLA ska definieras för varje tjänstekontrakt. Detta SLA ska ta hänsyn till framtida kapacitet för tjänstekontraktet med avseende på transaktionsvolym, variationer i användningsmönster och krav på tillgänglighet, i kombination med förmåga till kontinuerlig förändring. | SLA definieras i TKB som nyttjas. Övriga SLA’er för Applikationen hanteras av systemförvaltare. |
Integration ska ske över en integrationsinfrastruktur (t.ex. virtualiseringsplattform) som möjliggör uppföljning av tjänsteproducenters fullföljande av SLA. | Nationella tjänsteplattformen kan används för informationsförsörjning (HSA). |
System och e-tjänster som upphandlas kan utökas med fler organisationer som kunder utan krav på infrastrukturella ingrepp (jämför s.k. SaaS) | Applikationen är utvecklad för att tillgängliggöras nationellt i form av PaaS. Lokalt erhålls applikationen som binär (jar-fil). Denna kan köras som den är eller paketeras till exempelvis Docker image för installation i lokal Paas-miljö. |
IT4: Lös koppling | |
Förutsättningar att uppfylla | Uppfyllnad |
---|---|
Meddelandeutbyte baseras på att kommunikation etableras utgående från vem som äger informationen som ska konsumeras eller berikas, inte vilket system, plattform, datalager eller tekniskt gränssnitt som informationsägaren för stunden använder för att hantera informationen. Genom centralt administrerad förmedlingstjänst skapas lös koppling mellan informationskonsument och informationsägarens tekniska lösning. | Lös koppling tillämpas alltid. Där möjligt används:
|
En arkitektur som skapar lös koppling mellan konsumenter och producenter, avseende adressering och standarder för kommunikation. | Följer vedertagna standards. Se kapitel: "Standarder" |
En nationell integrationspunkt ska kunna erbjudas för varje nationellt standardiserat tjänstekontrakt, som en fasad mot bakomliggande brokiga systemlandskap. | N/A Inga tjänstekontrakt tillhandahålls av tjänsten. |
Nationella tjänstekontrakt förvaltas i en nationellt koordinerad förvaltning. | N/A Inga tjänstekontrakt tillhandahålls av tjänsten. |
För en process inom vård och omsorg kan flera tjänstekontrakt ingå. Därför är det viktigt att alla tjänstekontrakt baseras på en gemensam referensmodell för informationsstruktur. | Inga tjänstekontrakt tillhandahålls av tjänsten. SAML, Oauth2 samt OIDC standard följs. |
Parter som samverkar i enlighet med arkitekturen integrerar med system hos parter som lyder under annan styrning (t.ex. myndigheter, kunder och leverantörer). Det kan leda till att vård- och omsorgsgivare antingen:
Observera att semantisk bryggning av information till vårdens referensmodell förutsätter en nationell förvaltning av bryggningstjänster. För att införliva ett externt förvaltat tjänstekontrakt förutsätts en transparent, robust och uthållig tjänstekontraktsförvaltning hos den externa parten. | N/A Inga tjänstekontrakt tillhandahålls av tjänsten. |
Befintliga system behöver anpassas till nationella tjänstekontrakt. Detta kan göras av leverantörer direkt i produkten, eller genom fristående integrationskomponenter (”anslutningar”). En anslutning bör ligga nära (logiskt vara en del av) det system som ansluts, oavsett om det är i rollen som konsument eller producent för anslutningen som genomförs. | N/A Inga tjänstekontrakt tillhandahålls av tjänsten. |
Interoperabla standarder för meddelandeutbyte tillämpas, så att integration med till exempel en Web Service kan utföras utan att anropande system behöver tillföras en för tjänsteproducenten specialskriven integrationsmodul (s.k. agent). | Internationella standarder används. Se kapitel: "Standarder" |
IT5: Lokalt driven e-tjänsteförsörjning | |
Förutsättningar att uppfylla | Uppfyllnad |
---|---|
När utveckling av källkod är en del av en tjänsteleverans skall följande beaktas:
| All dokumentation och källkod tillhörande applikationen återfinns i leverantörens Atlassian Suite. Förvaltnings organisationen har full tillgång till dessa system, och externa parter bereds tillgång vid efterfrågan. Samtliga leverabler kan flyttas över till förvaltningsorganisation då egen infrastruktur är framtagen. Applikationen är utvecklad i Java och tillhandahålls lokalt i form av en jar binär. Denna kan paketeras till en Docker Image för lokal installation, eller körs direkt som den är. Docker kan exekvera på både Linux och Windows, eller i dedikerad PaaS (ex. OpenShift, Kubernetes osv). |
Minsta möjliga – men tillräcklig – mängd standarder och stödjande gemensamma grundbultar för nationella e-tjänstekanaler säkerställer att även utvecklingsenheter i mindre organisationer kan bidra med e-tjänster för en integrerad användarupplevelse och att en gemensam back-office för anslutning av huvudmän till e-tjänster finns etablerad. I den mån etablerade standarder med bred tillämpning i kommersiella e-tjänster finns (t.ex. för single-sign-on), bör de användas i syfte att möjliggöra upphandling av hyllprodukter. | Se kapitel: "Standarder" samt "Teknik och Ramverk" |
Utveckling sker mot globalt dominerande portabilitetsstandarder i de fall mellanvara (applikationsservrar) tillämpas. Det är möjliggöraren för nyttjande av free-ware och lågkostnadsverktyg i organisationer som inte orkar bära tunga licenskostnader för komplexa utvecklingsverktyg och driftsplattformar. | Se kapitel: "Standarder" samt "Teknik och Ramverk" För lokala installationer nyttjas Docker. |
Nationell (eller regional – beroende på sammanhang vård/omsorg) förvaltning är etablerad (t.ex. s.k. Portal Governance), med effektiva processer för att införliva lokalt utvecklade e-tjänster i nationella e-tjänstekanaler. Systematisk och effektiv allokering av resurser för drift är en viktig grundförutsättning. | Applikationen förvaltas av Inera/CGI. Driften hanteras av Orange och NoGUI. |
Genom lokal governance och tillämpning av det nationella regelverket får lokala projekt den stöttning som behövs för att från början bygga in förutsättningar för integration i samordnade (t.ex. nationella) e-tjänstekanaler. | Följande regelverk tillämpas:
|
IT6: Samverkan i federation | |
Förutsättningar | Uppfyllnad |
---|---|
Att gemensamma gränssnitt i alla federativa utbyten finns framtagna och beskrivna, vilket möjliggör kostnadseffektiva och leverantörsneutrala lösningar. | Attributhantering utgår från SAMBI profil. |
Det behövs organ och processer för att godkänna utgivare av elektroniska identitetsintyg och certifikat som är giltiga i federationen. | Användare registreras i regionala kataloger (tillgängliggörs via HSA) SITHS används. |
Aktörer i olika nät, inklusive öppna nät ska vara välkomna i elektronisk samverkan genom att samverkande komponenter är säkra. | Infrastrukturen är ansluten till internet och sjunet. |
Att Ingående parter i federationen är överens om ett antal gemensamma ståndpunkter:
| Applikationen är en IdP / OP. Se kapitel: "Standarder" |
Användningsfall
Här beskrivs systemet ur ett funktionellt perspektiv i form av en användningsfallsmodell i syfte att lyfta fram de funktionella krav som är drivande för arkitekturen.
Användningsfall - Översikt
Ref | Användningsfall |
---|---|
AF1 | Administrera tjänsten |
AF2 | Autentisera aktör |
AF3 | Logga ut aktör |
AF4 | Revokera tokens |
AF5 | Biljettväxling |
AF6 | Elektronisk underskrift |
Schematisk användningsfallsöversikt.
Aktörsinformation
Aktör | Beskrivning |
---|---|
Personal | Användaren som använder en e-tjänst. |
E-tjänst | E-tjänsten använder IdP för att autentisera och auktorisera personal. |
Katalogtjänst (HSA) | Informationskälla för personliga och behörighetsgrundande egenskaper (behörighetsroller). |
Systemförvaltare | Person som administrerar IdP. Aktiverar e-tjänster som skall använda IdP. |
Autentiseringsmetoder
Idp:n har flera olika autentiseringsmetoder som kan användas. Dessa konfigureras per SP. Om det enbart finns 1 metod görs valet implicit och flödet fortsätter automatiskt.
Följande autentiseringsmetoder är för närvarande aktuella i IdP:
SITHS eID på annan enhet (SITHS_EID_OTHER_DEVICE)
SITHS eID på denna enhet (SITHS_EID_SAME_DEVICE)
SITHS-kort på denna enhet (MTLS)
Nedan beskrivningar av Autentiseringsmetoderna gäller bara:
- OM IdP INTE har en giltig SSO-session
- Eller för autentisering via Autentiseringstjänsten (OOB) om SP/IdP begär en:
- Förnyad autentisering eller
- Legitimering för Underskrift (ForceAuthn)
Se Anslutningsguide till IdP för mer information om de olika autentiseringsmetoderna. Eventuella skillnader i autentiseringsflödena illustreras i användningsfallen nedan.
Dubbelriktad TLS (mTLS)
Denna funktion aktiveras först under Q3-2023
I väntan på att den aktiveras får användaren bara ett försök att välja sitt klientcertifikat per webbläsarsession. Om SITHS-kortet inte sitter i läsaren, är för fel miljö eller om importen av certifikaten till operativsystemet inte fungerar måste användaren starta om webbläsaren för att kunna göra ett nytt försök att välja klientcertifikat. Detta beror på att det är den logiken som gäller för marknadens olika webbläsare.
Användarens certifikat förmedlas via webbläsaren integration mot operativsystemet. En klient på användarens dator läser kortet och publicerar certet till operativsystemet/webbläsaren som använder det för att skapa en mTLS-anslutning till servern via webbläsaren. Finns det flera certifikat som accepteras av servern erbjuder webbläsaren en certifikatvalsdialog som ligger utanför serverns kontroll.
Användaren kommer vid varje nytt inloggningsförsök bli omdirigerad till en annan subdomän för att undvika att certifikatet som valdes vid förra inloggningsförsöket väljs igen av webbläsaren. Rent praktiskt kommer användaren bli omdirigerad till subdomäner som börjar med secure0.idp.inera.se och sedan inkrementera det numeriska värdet ända tills den högsta tillåtna subdomänen nås som IdP:n är konfigurerad till att omdirigera användare till, exempelvis secure24.idp.inera.se. Efter att användaren har förbrukat subdomänen med det högsta numeriska värdet blir användaren ombedd att starta om sin webbläsare för att rensa certifikatsvalen som webbläsaren kommit ihåg. Efter omstarten kommer användaren få börja om med secure0.idp.inera.se som första subdomän.
Användaren får dessutom möjlighet att göra nya inloggningsförsök ifall inget certifikat har förmedlats till IdP:n, exempelvis genom att inget kort har suttit i kortläsaren eller om användaren råkat trycka på Avbryt när certifikatsväljaren har presenterats i webbläsaren. I dessa fall kommer användaren hamna på en felsida som berättar att ett certifikat saknas för att slutföra inloggningen. Här har dock användaren möjlighet att trycka på kanppen Försök igen som dirigerar om användaren till nästa subdomän i kedjan. Väl där får användaren en ny chans att välja ett certifikat som förmedlas till IdP:n.
En detalj att känna till här är webbläsarnas omförmåga att rensa sessionskakor när en särskild inställning i webbläsaren används. Inställningen handlar om i vilket läge webbläsaren ska starta upp i. I fallet då användaren har valt att webbläsaren ska starta om med samma flikar och session som när webbläsaren stängdes ner senast kommer denna funktionalitet ha en negativ konsekvens i form av att användaren kan behöva starta om webbläsaren oftare än vad som skulle vara nödvändigt. Ett sådant scenario kan se ut såhär. Användaren har gjort 23 inloggningar med dubbelriktad TLS i den pågående webbläsarsessionen och väljer att stänga ner sin webbläsare. Senare startar användaren upp sin webbläsare igen. Då webbläsaren inte har rensat sessionskakorna kommer nästa inloggning med dubbelriktad TLS leda till att användaren autentiserar sig på subdomänen secure24.idp.inera.se. Vid nästa inloggningsförsök får användaren varningen att webbläsaren behöver startas om då för många inloggning gjorts i den pågående webbläsarsessionen även fast användaren bara gjort ett inloggningsförsök sedan senaste omstart.
Autentiseringstjänst (OOB - out-of-band)
Autentisering baserad på OOB-teknik (Out Of Band) sker via Autentiseringstjänsten [P3]. Två typer av Autentiseringsmetoder för OOB exponeras via IdP:n, autentisering med samma enhet och autentisering med annan enhet. Skillnaden mellan de två är enbart i hur IdP:n exponerar autostart-token för SITHS eID-appen.
- SITHS eID på denna enhet - IdP:n triggar uppstart av klientapplikation via webbläsaren och custom-protokollet "siths://" tillsammans med autostart-token i anropet.
- SITHS eID på annan enhet - IdP:n visar en QR-kod och användaren får själv starta sin applikation för att skanna QR-koden med kameran på den mobila enheten.
Se dokumentationen för Autentiseringstjänsten [P3] för mer detaljer.
Logisk realisering av signifikanta användningsfall
AF1 - Administrera tjänsten
Textuell beskrivning
IdP har en tillhörande administrativ komponent. Komponenten och sina funktioner beskrivs utförligt i Användarhandboken. Nedan sammanfattas de administrativa möjligheter som tillhandahålls.
- Administrera behöriga SAML-klienter
- Administrera behöriga OIDC-klienter
- Administrera pålitliga Certifikatsutfärdare
- Administrera tjänstens Certifikat / Privata Nycklar
- Administrera behörigheter för administratörer av GUI
- Konfigurera kontaktuppgifter för tjänsten
Realisering
En aktör med behörighet vill administrera IdP.
- Aktören loggar in i tjänsten, och en förutsättning är att aktören har behörighet genom sina attribut i HSA-katalogen.
- Aktören är inloggad och utför den tilltänkta administrationen.
- Aktören loggar ut ur tjänsten.
AF2 - Autentisera aktör
Textuell beskrivning
Användningsfallet beskriver hur en användare autentiseras i flödet.
Se Inledning för beskrivning av detta användningsfall.
Realisering
SAML
Flödet visar en Autentisering med SAML. Flödet är inte uttömmande utan visar enbart ett av många alternativ som kan ske under en autentisering. Exempelvis att aktören i detta fall måste välja ett tjänste-id/medarbetaruppdrag i enlighet med begäran från SP, samt att aktören har mer än ett uppdrag att välja. Likaså att inget tjänste-id, organisationsnummer, personnummer eller orgAffiliation har pekats ut med hjälp av PrincipalSelection för att förenkla inloggningsflödet för en användare.
Likaså är flödet förenklat och visar exempelvis inte revokeringskontroll av certifikat.
OIDC
Flödet visar en Autentisering med OIDC. Kommentarer för SAML-flödet är applicerbart även i detta flöde.
Nämnvärt i det här fallet är att möjligheten till filtrering (likvärdigt PrincipalSelection för SAML) av tjänste-id, organisationsnummer, personnummer eller orgAffiliation inte synliggjorts i flödet.
AF3 - Logga ut aktör
Textuell beskrivning
Användningsfallet beskriver hur en utloggning går till inom tjänsten. Användningsfallet består av 2 alternativ.
- SAML
- En inloggad SP skickar ett LogoutRequest (via användarens user-agent) till IdP'n. Detta LogoutRequest måste vara signerat.
- Vid ett giltigt request avslutar IdP'n den eventuella IdP-sessionen. Ingen propagering till andra SP/RP i samma IdP session sker.
- SSO för tidigare IdP-session är nu avslutad och ny AuthnRequest kommer resulterar i ny inloggning, och ny IdP-session.
- LogoutResponse returneras till SP i enlighet med efterfrågad binding.
- SP ansvarar för att avsluta den egna sessionen med användaren.
- OIDC Logout
- En inloggad RP gör en Logout begäran (via användarens user-agent) till IdP'n. I detta anrop skickas idtoken med. Detta anrop görs efter det att aktören loggat ut från RP i enlighet med standard.
- Vid en giltig begäran avslutar IdP'n den eventuella IdP-sessionen, samt revokerar id-token, access-token, samt refresh-token som hör till det token som skickades in. Tokens utfärdade till andra RP revokeras ej. Ingen propagering till andra RP/SP i samma IdP session sker.
- SSO för tidigare IdP-session är nu avslutad
- Eventuellt redirectas användaren till en av RP angiven URL, URL:en måste finnas registrerad på servern för att redirekten ska tillåtas.
Dessa två flöden kan sammanfattas med följande:
- Vid en logoutbegäran inom antingen SAML eller OIDC så kommer IdP'n att avsluta IdP-sessionen och förhindra fortsatt SSO. Tokens utfärdade till andra RP fortsätter vara giltiga.
Flöden nedan representerar de olika scenarion för utloggning som anges ovan.
AF4 - Revokera tokens
Textuell beskrivning
Användningsfallet beskriver hur en revokering av token går till inom tjänsten..
- Token revokering
- En RP som har tillgång till en Access Token eller Refresh Token vill revokera denna. En revokeringsbegäran för denna token skickas till IdP'n.
- Vid giltig begäran revokerar idP'n det token som ingick i begäran samt eventuella tillhörande tokens (ID Token, Access Token, Refresh Token som utfärdades samtidigt).
- Ingen inverkan på den IdP-session som token utfärdades inom sker. Om IdP-sessionen fortfarande är giltig kan SSO fortsatt erhållas.
- IdP skickar svar på begäran med statuskod.
Detta flöde kan sammanfattas med följande:
- Vid revokeringsbegäran kommer enbart den/de tokens som hör till begäran att revokeras. Ingen inverkan på användaren IdP-session kommer att ske, och vid giltig IdP-session fortsätter användaren erhålla SSO.
Realisering
Flöden nedan representerar de olika scenarion för revokering som anges ovan.
AF5 - Biljettväxling
Textuell beskrivning
Biljettväxling beskrivs i RFC7522 och innebär att en E-tjänst med tillgång till en giltig SAML Assertion, kan använda denna för ett erhålla en AccessToken med motsvarande innehåll.
- En e-tjänst har erhållit en giltig SAML Assertion, men behöver ett åtkomstintyg i form av en access-token för anrop till ett skyddat API.
- e-tjänsten använder denna Assertion i ett anrop mot IdP:ns biljettväxlings-endpoint.
- IdP säkerställer att biljettväxling får ske.
- IdP tillhandahåller en access, samt refresh-token tillbaka till e-tjänsten
- e-tjänsten använder access-token gentemot det skyddade API't.
- Tjänsten med API't kan eventuellt vilja kontrollera den använda access-token gentemot IdP.
- API-tjänsten returnerar ett svar
Realisering
Flödet nedan representerar en biljettväxling för en e-tjänst.
AF6 - Elektronisk underskrift
Icke-funktionella krav
Denna information är låst och behörighetsstyrd. Åtkomst sker genom att expandera fältet nedan efter inloggning om du är behörig
Teknisk lösning
Denna information är låst och behörighetsstyrd. Åtkomst sker genom att expandera fältet nedan efter inloggning om du är behörig
Säkerhet
Denna information är låst och behörighetsstyrd. Åtkomst sker genom att expandera fältet nedan efter inloggning om du är behörig
LoA administration
Denna information är låst och behörighetsstyrd. Åtkomst sker genom att expandera fältet nedan efter inloggning om du är behörig
Informationshantering
Domäninformationsmodell
IdP har ingen egen domäninformationstabell.
Informationens ursprung
Information som konsumeras
Information om egenskaper som förmedlas via IdP hämtas från nationell eller regional kataloger. Informationen hämtas från HSA via definerade tjänstekontrakt se 1.4.2.
Information om identitet som förmedlas via IdP hämtas antingen från Katalogtjänst HSA eller från certifikat utfärdat av betrodd certifikatsutfärdare, såsom SITHS CA.
Information som skapas
Ingen information skapas utan paketeras enbart utifrån ovan nämnda källor.
Driftaspekter
Denna information är låst och behörighetsstyrd. Åtkomst sker genom att expandera fältet nedan efter inloggning om du är behörig
Publik Information