...
UseCase 1: En innbygger som allerede er innlogget på Helsenorge kan gå over fra Helsenorge til eksternt system ved å velge en funksjon på Helsenorge som involverer det eksterne systemet (“uthopp”).
Når innbygger “kommer til” det eksterne systemet, kontakter dette systemet alltid uthopp skjer fra Helsenorge, kalles en URL som peker til det endepunkt i det ekstrene systemet som starter OIDC-flyten mot Helsenorge sikkerhetstjeneste. Når dette endepunktet kalles fra Helsenorge skal det eksterne systemet alltid kalle Helsenorge OpenID Connect provider for å få informasjon om (allerede) innlogget reautentisere den innbygger på Helsenorge Helsneorege som nå gjør “uthoppet”.
Gjennom OpenID Connect flyten gir Helsenorge sikkerhetstjeneste det eksterne systemet alltid informasjon (via IdToken) om både hvem innlogget innbygger og eventuell innbygger er samt hvem som er representert innbygger (pasienten). Dersom dette ikke er samme person oppgis også relasjon mellom innlogget innbygger og pasient som representeres (foreldre foreldrerepresentasjon eller fullmakt). Videre gis det et AksessToken som siden kan benyttes dersom det eksterne systemet skal benytte. API’er på Helsenorge i “innbygger context”..
Innbygger er etter dette innlogget i både det eksterne systemet ( og på Helsenorge):
Man er innlogget på Hesenorge inntil man logger seg av selv, eller etter 30 minutter inaktivitet
Det eksterne systemet kan settes opp i Helsenorge sikkerhetstjeneste på to alternative måter (der alternativ 1 er “default”, og det som normalt benyttes):
Uavhengig: Utlogging (manuelt eller på inaktivitet) skjer i det eksterne systemet. Dette systemet skal da kalle /revoke endepunktet, Merk! Innbygger skal logges ikke logges automatisk ut av Helsenorge, selv om man logger ut i det eksterne systemet.
Med single sign-out: Da logges man automatisk ut av det eksterne systemet når man logger ut av Helsenorge. (Dette krever at det eksterne systemet støtter front-channel logout). Dette er normalt ikke en ønskjet konfigurering.
UseCase 2: En innbygger starter med å skulle logge seg inn i et eksternt system (eller MobilAPP). Dette systemet har valgt å benytter Helsenorge OpenID Connect provider. Systemet må ha etablert en integrasjon med Helsenorge for andre digitale helsetjenester utover innlogging for at slik bruk av Helsenorge innloggingstjeneste kan benyttes.
Info |
---|
Denne UseCase er ikke generelt støttet. Slike USeCases må avtales separat. |
Det eksterne systemet, kontakter Helsenorge OpenID Connect provider for å logge innbygger inn på Helsenorge.
Dersom innbygger ikke allerede er innlogget, vil innbygger måtte logge seg inn (via ID-porten).
Dersom innbygger ikke allerede er Helsenorge bruker, vil innbygger måtte akseptere bruksvilkårene for Helsenorge.
Etter at innbygger er logget inn, vil det eksterne systemet gjennom OpenID Connect flyten få informasjon om innlogget innbygger. Videre gis det et AksessToken som siden kan benyttes dersom det eksterne systemet skal benytte . API’er på Helsenorge.
Innbygger er innlogget i det eksterne systemet, og i Helsenorge (selv om det ikke finnes noe browser vindu der Helsenorge forsiden vises). Men, dersom innbygger velger å selv gå til Helsenorge, er hen altså allerede innlogget.
Det eksterne systemet kan på samme måte som i “uthopp” usecase, settes opp i Helsenorge sikkerhetstjeneste på to alternative måter (der alternativ 1 er “default”):
Uavhengig:i denne UseCase alltid opp uavhengig utlogging: Utlogging (manuelt eller på inaktivitet) skjer i det eksterne systemet. Dette systemet skal da kalle /revoke endepunktet
, Merk! Innbygger skal ikke logges automatisk ut av Helsenorge, selv om man logger ut i det eksterne systemet.Med single sign-out: Da logges man automatisk ut av det eksterne systemet når man logger ut av Helsenorge.
(Dette krever at det eksterne systemet støtter front-channel logout).
Overordnet logisk flyt
Gliffy | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
ID-token inneholder påloget innbygger samt representert innbygger. Videre angis type representasjonsforhold hvis relevant.
AksessToken gir rettigheter til å kalle Helsenorge API’er i innbygger kontekst (hvis relevant)
F2: Eksternt system/app kan siden benytte AksessToken for å få tilgang til API’er på Helsenorge i “innbygger-context”.
...
Detaljert beskrivelse av endepunkter og flyt finnes i denne undersiden: V3 - OpenID Connect /API-tilgang (IdToken og AccessToken)Endepunktene benytter forbedrede sikkerhetsmekanismer i forhold til tidligere endepunkt. Videre støttes mobil-apper og langtlevende sesjoner med bruk av RefreshToken.