MVK SSO 2.0 introduktion v1.6.pdf

Ämne
Introduktion MVK SSO 2.0
Ansvarig
Version
Datum
1.6
2012-04-25
Dokument ID
Martin Carlman/Peter Bäck
Version
Datum
Av
1.6
120425
EE
Sign
MVK-0031
Avsnitt
Ändring
MVK SSO 2.0
Mina vårdkontakter
MVK SSO 2.0 introduktion
1 (18)
Innehållsförteckning
1 Inledning............................................................................................................. 3 1.1 Revisionsinformation ..................................................................................................................... 3 1.2 Referensdokument ........................................................................................................................ 3 2 MVK SSO-tjänst ValidateToken ........................................................................ 4 2.1 Om tjänsten ................................................................................................................................... 4 2.2 Exponering av tjänster mot användare ......................................................................................... 5 2.3 2.4 2.5 2.2.1 Listning/Vårdval ................................................................................................................ 5 2.2.2 Betjäningsområde ............................................................................................................ 5 2.2.3 Vårdrelation med filöverföring .......................................................................................... 5 2.2.4 Individuellt anpassad åtkomst .......................................................................................... 5 2.2.5 Åtkomst för vårdpersonal ................................................................................................. 5 Möjliga anpassningar i användargränssnittet ................................................................................ 6 2.3.1 Invånare ........................................................................................................................... 6 2.3.2 Vårdpersonal .................................................................................................................... 7 Informationsutbyte ........................................................................................................................ 8 2.4.1 Interface – ValidateToken ................................................................................................ 8 2.4.2 Affärsobjektet – ValidateIDType ....................................................................................... 8 2.4.3 Affärsobjektet – ValidateIdResponseType ....................................................................... 9 2.4.4 Affärsobjektet – SSOObjectType ................................................................................... 10 2.4.5 Affärsobjektet – Healthcare_facility ................................................................................ 11 2.4.6 Felmeddelanden............................................................................................................. 11 Teknisk anslutningsinformation ................................................................................................... 13 2.5.1 WSDL ............................................................................................................................. 13 2.5.2 Säkerhetslösning ............................................................................................................ 13 2.6 Testdata ...................................................................................................................................... 14 3 MVK SSO-tjänst PushId .................................................................................. 15 3.1 Om tjänsten ................................................................................................................................. 15 3.2 Informationsutbyte ...................................................................................................................... 15 3.3 4 3.2.1 Affärsobjektet – PushIdType .......................................................................................... 15 3.2.2 Affärsobjektet – SSOObjectType ................................................................................... 15 3.2.3 Affärsobjektet – Healthcare_facility ................................................................................ 16 3.2.4 Affärsobjektet – PushIdResponseType .......................................................................... 16 3.2.5 Felmeddelanden............................................................................................................. 16 Teknisk anslutningsinformation ................................................................................................... 17 3.3.1 WSDL ............................................................................................................................. 17 3.3.2 Säkerhetslösning ............................................................................................................ 17 Checklista vid anslutning till MVK SSO ........................................................ 18 MVK SSO 2.0 introduktion
2 (18)
1 Inledning
Dokumentet beskriver Mina vårdkontakters SSO-tjänst och är tänkt att vara en introduktion som beskriver
tjänsten, vad som krävs för att ansluta sig och vilka konfigurationer och anpassningar som är möjliga.
1.1
Revisionsinformation
Utgåva
1.00
1.1
Datum
2010-12-22
2011-09-16
Ansvarig
MC
MC
1.3
1.4
1.5
2011-10-20
2011-11-17
2012-01-04
EE
EE
EE
1.6
2012-04-25
EE
1.2
Kommentar
Fastställd version
Uppdateringar gällande tjänster för vårdpersonal.
Förtydliganden i beskrivningar av tjänsten.
Lagt till information om PushID.
Lagt till information om testpersoner och testenheter.
Förtydligat information i checklistan kring certifikat
och Subject CN.
Ändrat i beskrivningen för objektet healthcarefacility i
validateTokenResponse så att det står att
healthcare_facility_name inte skickas med.
Referensdokument
Referens
REF01
Namn
WSDL, SSO2.0
MVK SSO 2.0 introduktion
Beskrivning
Tjänstebeskrivning
3 (18)
2 MVK SSO-tjänst ValidateToken
2.1
Om tjänsten
Mina vårdkontakter (MVK) har en single-signontjänst för att ge åtkomst till andra system. Därigenom får dessa
system möjligheten att använda basfunktioner som autentisering och styra åtkomst.
Tjänsten används för att styra autentiserade användare vidare till externa system och det innebär att användaren
inte skall behöva logga på det externa systemet separat.
När tjänsten (SSO) anropas öppnas ett nytt webbläsarfönster och man lämnar MVK. I SSO-tjänsten finns inget
stöd för att återföra information eller status till MVK, vill man göra detta finns andra tjänster tillgängliga.
Användare
1. Login
5. MVK URL + GUID
MVK
2. Webb URL
3. Skapa ID
6. Validera ID
Externt system
7. Extern webb
4. GUID
Create
Token
Validate
Token
GUID storage
asb.minavardkontakter.se
Figur 1 - Översikt MVK SSO
1.
2.
Användare loggar in på tjänsten MVK (invånare eller vårdpersonal).
Invånare: MVK genererar en personlig meny baserat på folkbokföring, listningsuppgifter,
inloggningssätt och övrig profilinformation. (t ex relation till specialistmottagning, relation till
andra tjänster).
Vårdpersonal: Användaren kommer till en startsida med översikt över mottagningar och tjänster
som man har tillgång till. På respektive mottagning kan det exponeras tjänster via MVK SSO. Alla
MVK SSO 2.0 introduktion
4 (18)
3.
4.
5.
6.
7.
som har behörighet på mottagningen kommer åt tjänsten.
Användaren klickar på SSO URL till externt system. Autentiseringstjänsten initieras och unikt id
genereras (GUID). ID samt övrig nödvändig information skickas till autentiseringstjänsten
(CreateToken)
Unikt ID (GUID) returneras till MVK
Användaren öppnar SSO URL till externt system. URL innehåller ID(GUID).
Ett nytt webbläsarfönster öppnas med den externa tjänsten och användaren upplyses om att man nu
lämnar MVK.
Det finns även möjligheter att definiera andra parametrar som skall skickas till det externa systemet
i anropet.
Det externa systemet hämtar ID(GUID) samt validerar detta mot autentiseringstjänsten
(ValidateToken)
Invånaren är nu validerad och inloggad i det externa systemets webb
Tabell 1 – Översiktlig flödesbeskrivning SSO tjänst
2.2
Exponering av tjänster mot användare
De flesta tjänster i MVK exponeras genom att de tillhandahålls av/på en mottagning (HSAID). Tjänsterna
konfigureras så att mottagningen styr vilka användare som kan använda tjänsten. En användare kan ges åtkomst
till en mottagning på de sätt som beskrivs nedan.
2.2.1
Listning/Vårdval
Genom information från listningssystem får en användare tillgång till en mottagning där de är listade.
2.2.2
Betjäningsområde
En mottagning kan sätta upp kriterier som ålder, kön och geografisk tillhörighet för att välja vilka
användargrupper man vill exponera sig för. En lokal administratör på mottagningen kan bestämma och ändra
vilket betjäningsområde som gäller och på så vis styra vilka som ska kunna nyttja tjänsterna.
2.2.3
Vårdrelation med filöverföring
Det finns möjligheter att sätta upp en filöverföring med användaruppgifter för att tilldela och frånta behörighet
till specifika mottagningar. En fil kan skickas regelbundet med olika kommandon (se tjänsten MVK
Systemrelation).
2.2.4
Individuellt anpassad åtkomst
Behörighet kan ges till en mottagning baserat på en användares personnummer (Godkänn för kommunikation).
Det finns även möjlighet att ge vissa användare tillgång till specifika tjänster på mottagningen helt individuellt
(Dela ut ärendetyp). Vårdpersonal vid mottagningen kan dela ut behörigheter både till mottagningen och
specifika tjänster. En lokal administratör på mottagningen bestämmer vilka tjänster som behöver delas ut till
specificerade användare.
2.2.5
Åtkomst för vårdpersonal
En tjänst som skall exponeras för vårdpersonal delas ut av MVKs administratörer till en eller flera mottagningar.
Tjänsten blir då tillgänglig för samtlig vårdpersonal med tillgång till mottagningen.
MVK SSO 2.0 introduktion
5 (18)
2.3
Möjliga anpassningar i användargränssnittet
Det finns en mängd information som går att anpassa kring tjänster som exponeras i MVK. En del av
informationen kan anpassas av administratörer på mottagningen där tjänsten exponeras, annan basinformation
måste anpassas av systemets administratörer vid uppstart av tjänsten.
Systemadministratörer underhåller texter och adresser rörande anslutande tjänst, och ställer in önskad minsta
säkerhetsnivå. Följande värden behöver tillhandahållas av integrerande system.
Värde
Titel
Titel, knapp
Beskrivning
Säkerhetsnivå
Text säkerhetsnivå
2.3.1
Beskrivning
Namn på tjänsten som visas för användare
Namn på knappen som startar tjänsten
Beskrivning av tjänsten som visas för användaren
Anger om tjänsten kräver inloggning med elegitimation
Beskrivande text som visas för användaren om
man inte uppfyller säkerhetsnivån
Exempel
”Boka tid direkt”
”Starta tjänsten”
”Denna tjänst kräver att du loggat in
med e-legitimation…”
Invånare
Titel
Beskrivning
Text säkerhetsnivå
Titel, knapp
Figur 2 - SSO-tjänst, exponering GUI invånare
MVK SSO 2.0 introduktion
6 (18)
2.3.2
Vårdpersonal
Titel
Beskrivning
Text säkerhetsnivå
Titel, knapp
Figur 3 - SSO-tjänst, exponering GUI vårdpersonal
MVK SSO 2.0 introduktion
7 (18)
2.4
Informationsutbyte
Tjänsten ValidateToken validerar att inkommet token (GUID) är giltigt och aktivt.
2.4.1
Interface – ValidateToken
2.4.1.1
Översikt
2.4.1.2
Namespace
2.4.1.3
Operation – Validate
2.4.2
2.4.2.1
Affärsobjektet - ValidateIDType
Översikt
Objektet beskriver global universal ID som används som token(biljett) mellan MVK och anropande system.
MVK SSO 2.0 introduktion
8 (18)
2.4.2.2
Elementförteckning
Element
Typ
GUID
String
2.4.3
Mandatory
(M)/
Optional (O)
M
Kardinalitet
Default
1..1
Max längd
Beskrivning
Den längd som
angavs i
CreateTokentjänsten
Affärsobjektet – ValidateIdResponseType
2.4.3.1
Översikt
2.4.3.2
Elementförteckning
Element
Typ
Kardinalitet
String
Mandatory
(M)/
Optional
(O)
M
statusCode
statusText
String
O
0..1
Ssoobject
SSOObjectType
O
0..1
MVK SSO 2.0 introduktion
1..1
Default
Max
längd
Beskrivning
Giltiga värden:
- OK
- WARNING
- ERROR
Felmeddelande från
SSO-tjänsten om
statusCode = ERROR
9 (18)
2.4.4
Affärsobjektet – SSOObjectType
2.4.4.1
Översikt
2.4.4.2
Elementförteckning
Element
Typ
GUID
Kardinalitet
String
Mandatory
(M)/
Optional
(O)
M
SysId
String
M
1..1
UserId
String
M
1..1
AuthMethod
String
M
1..1
TokenTimeOut
Int
M
1..1
Cert
UserType
String
String
O
O
0..1
0..1
1..1
Default
Max
längd
Beskrivning
Det GUID som
skickades in till
tjänsten
Systemidentifierare
(alltid ”MVK” i
nuläget)
Användarens
identifierare
(personnummer
eller HSAID1)
Säkerhetsnivå som
användaren använt
för att autentisera
sig mot MVK.
Giltiga värden:
1 - användarnamn2
3 – certifikat/
e-legitimation
SSO-biljettens
giltighetstid (i
millisekunder)
Typ av inloggad
användare.
Kan vara:
INV - Invånare
1
MVK konfigurerar per tjänst om personnummer eller HSAID skall returneras.
Invånare autentiserar sig med användarnamn, lösenord och engångskod vilket innebär tvåfaktor- inloggning.
Vårdpersonal använder sig enbart av användarnamn och lösenord.
2
MVK SSO 2.0 introduktion
10 (18)
VA - Vårdpersonal
SYSTEM - System
healthcare_facility
2.4.5
healthcare_facility
0..1
Affärsobjektet – Healthcare_facility
2.4.5.1
Översikt
2.4.5.2
Elementförteckning
Element
Typ
resourceName
resourceID
healthcare_facility_id
healthcare_facility_name
2.4.6
O
Kardinalitet
String
String
String
Mandatory
(M)/
Optional
(O)
O
O
O
String
O
0..1
Default
0..1
0..1
0..1
Max
längd
Beskrivning
Används inte
Används inte
HSAID för den
enhet som
exponerar
tjänsten.
Används inte
Felmeddelanden
SSO-tjänsten delar in fel i två typer:
- Logiska fel,
- Exceptions
2.4.6.1
Logiska fel
Logiska fel är förväntade fel som upptäcks och hanteras av tjänsten. Dessa fel returneras till anropande system
genom att i response-objektet sätta följande element:
- statusCode, sätts till ERROR
- statusText, innehåller feltext till anropande system.
Följande logiska fel kan inträffa i SSO-tjänsten och returneras i elementet statusText:
statusCode
ERROR
statusText
Token is NOT valid
Orsak
Token är inte längre giltig, validering av token inträffade utanför giltigt
tidsintervall
ERROR
Error, unable to
Ett oväntat fel inträffade under validering av token. Token kunde inte
MVK SSO 2.0 introduktion
11 (18)
validate token.
2.4.6.2
valideras.
Exceptions
Exceptions är oförväntade fel som inträffar under exekvering i SSO-tjänsten.
Exceptions hanteras inte av SSO-tjänsten utan returneras som SOAP Exception.
MVK SSO 2.0 introduktion
12 (18)
2.5
Teknisk anslutningsinformation
SSO-tjänsten består av två tjänster:
– CreateToken - en intern tjänst som endast konsumeras av MVK.
– ValidateToken - den publika tjänsten som anslutande parter skall konsumera.
Den publika tjänsten - ValidateToken består av 1 operation:
– ValidateID.
2.5.1
WSDL
Tjänstens WSDL finns att hämta via nedanstående URL (Se även bilaga WSDL, SSO2.0).
Endpointaddresser
Test:
https://asbcacc.minavardkontakter.se/MvkAsb_ValidateIDWeb/sca/ValidateToken
Prod:
https://asbc.minavardkontakter.se/MvkAsb_ValidateIDWeb/sca/ValidateToken
2.5.2
2.5.2.1
Säkerhetslösning
Brandvägg
Tjänsten är skyddad av brandvägg.
Alla nya system som ska använda tjänsten måste registreras med de IP nummer som används för att beredas
access.
2.5.2.2
Autentisering
Autentisering och kryptering mellan anslutande system och MVK baseras på SITHS HCC funktion certifikat.
HTTPS mutual authentication tillämpas (certifikatsbaserad autentisering).
Anslutande system autentiseras med klientcertifikat.
2.5.2.3
Kryptering
Kommunikation mellan anslutande system och MVK krypteras med HTTPS (TLS/SSL).
Anslutande system måste lita på MVK servercertifikat, utfärdat av SITHS CA.
2.5.2.4 Servercertifikat
MVK SSO-tjänsten använder servercertifikat utfärdat av SITHS.
I produktion används SITHS CA v3.
I testmiljö används SITHS CA Test v3.
2.5.2.5 Klientcertifikat
MVK SSO-tjänsten kräver att anropande system använder sig av klientcertifikat utfärdat av SITHS HCC.
Certifikatet ska vara av PKCS12–format. (*.p12-fil).
Detta gäller för både test-miljö och produktionsmiljö.
MVK SSO 2.0 introduktion
13 (18)
2.6 Testdata
2.6.1.1
Personer
Mina vårdkontakter använder följande testpersoner (invånare) i sina testmiljöer
Testperson
Tolvan Tolvansson
Testperson 1
Testperson 2
Testperson 3
Testperson 4
Testperson 5
Skyddad Id
Pnr
19121212-1212
19301229-9263
19400107-9120
19531224-2083
19710301-1032
19970516-2387
19420119-9124
2.6.1.2
Enheter
Enheter som ska testas måste har korrekta HSAID och måste finnas i HSA katalogen för att kunna registreras i
MVK testmiljö. Rekommenderat är att använda någon enhet som är tänkt att ingå i pilot eller acceptans drift för
att vara säker på att ingen konflikt med andra system uppstår.
MVK har ett antal testenheter men användandet av dessa måste stämmas av innan testerna planeras eftersom
dessa kan användas av fler projekt samtidigt och användandet blir tidsbegränsat.
MVK SSO 2.0 introduktion
14 (18)
3 MVK SSO-tjänst PushId
3.1
Om tjänsten
OBS Används endast för test! Tjänsten PushId kan användas vid test för att generera upp ett token (GUID).
3.2
Informationsutbyte
3.2.1
Affärsobjektet - PushIdType
3.2.1.1
Elementförteckning
Element
Typ
TokenSize
String
SSOObject
SSOObjectType
3.2.2
Mandatory
(M)/
Optional (O)
O
Kardinalitet
O
0..1
Default
0..1
Max längd
Beskrivning
Den längd
som angavs i
CreateTokentjänsten
Affärsobjektet – SSOObjectType
3.2.2.1
Elementförteckning
Element
Typ
SysId
Kardinalitet
String
Mandatory
(M)/
Optional
(O)
O
AuthMethod
String
O
0..1
TokenTimeOut
Int
O
0..1
Cert
healthcare_facility
String
healthcare_facility
O
O
0..1
0..1
0..1
Default
Max
längd
Beskrivning
Systemidentifierare
(alltid ”MVK” i
nuläget)
Säkerhetsnivå som
användaren använt
för att autentisera
sig mot MVK.
Giltiga värden:
1 - användarnamn3
3 – certifikat/
e-legitimation
SSO-biljettens
giltighetstid (i
millisekunder)
Kan lämnas tomt
3
Invånare autentiserar sig med användarnamn, lösenord och engångskod vilket innebär tvåfaktor- inloggning.
Vårdpersonal använder sig enbart av användarnamn och lösenord.
MVK SSO 2.0 introduktion
15 (18)
3.2.3
3.2.3.1
Affärsobjektet – Healthcare_facility
Elementförteckning
Element
Typ
resourceName
resourceID
healthcare_facility_id
healthcare_facility_name
3.2.4
3.2.4.1
String
O
0..1
Default
Max
längd
0..1
0..1
0..1
Beskrivning
Används inte
Används inte
HSAID för den
enhet som
exponerar
tjänsten.
Namn i klartext
på den enhet
som exponerar
tjänsten (namn i
MVK)
Affärsobjektet – PushIdResponseType
Elementförteckning
Element
Typ
GUID
String
3.2.5
Kardinalitet
String
String
String
Mandatory
(M)/
Optional
(O)
O
O
O
Mandatory
(M)/
Optional
(O)
O
Kardinalitet
0..1
Default
Max längd
Beskrivning
Den längd
som angavs i
CreateTokentjänsten
GUID
Felmeddelanden
SSO-tjänsten delar in fel i två typer:
- Logiska fel,
- Exceptions
3.2.5.1
Logiska fel
Logiska fel är förväntade fel som upptäcks och hanteras av tjänsten. Dessa fel returneras till anropande system
genom att i response-objektet sätta följande element:
- statusCode, sätts till ERROR
- statusText, innehåller feltext till anropande system.
3.2.5.2
Exceptions
Exceptions är oförväntade fel som inträffar under exekvering i SSO-tjänsten.
Exceptions hanteras inte av SSO-tjänsten utan returneras som SOAP Exception.
MVK SSO 2.0 introduktion
16 (18)
3.3
Teknisk anslutningsinformation
Den publika tjänsten - PushId består av 1 operation:
– PushId.
3.3.1
WSDL
Tjänstens WSDL finns att hämta via nedanstående URL
Endpointaddress
Test:
https://asbacc.minavardkontakter.se/Mvk_SSOService_CertAuthWeb/sca/exports/PushId_Cert_Facade
3.3.2
3.3.2.1
Säkerhetslösning
Brandvägg
Tjänsten är skyddad av brandvägg.
Alla nya system som ska använda tjänsten måste registreras med de IP nummer som används för att beredas
access.
3.3.2.2
Autentisering
Autentisering och kryptering mellan anslutande system och MVK baseras på SITHS HCC funktion certifikat.
HTTPS mutual authentication tillämpas (certifikatsbaserad autentisering).
Anslutande system autentiseras med klientcertifikat.
3.3.2.3
Kryptering
Kommunikation mellan anslutande system och MVK krypteras med HTTPS (TLS/SSL).
Anslutande system måste lita på MVK servercertifikat, utfärdat av SITHS CA.
3.3.2.4 Servercertifikat
MVK SSO-tjänsten använder servercertifikat utfärdat av SITHS.
I testmiljö används SITHS CA Test v3.
3.3.2.5 Klientcertifikat
MVK SSO-tjänsten kräver att anropande system använder sig av klientcertifikat utfärdat av SITHS HCC.
Certifikatet ska vara av PKCS12–format. (*.p12-fil).
Detta gäller för både test-miljö och produktionsmiljö.
MVK SSO 2.0 introduktion
17 (18)
4 Checklista vid anslutning till MVK SSO
Följande aktiviteter behöver genomföras i samband med en anslutning till MVK SSO.
Aktivitet
URL
IP/hostnamn
Klientcertifikat
Servercertifikat
Översiktlig dokumentation
Drift och förvaltningsorganisation
Urval
Informationstexter
Information om testsystem
Testanvändare för MVK
Verifiering vid anslutning
Tidsplan för anslutning
Kommentar
URL till anslutande system (externt system)
IP/hostnamn till anslutande system (externt system).
Information nödvändig för brandväggsöppning.
Detta ska skickas till kontaktperson på Softronic.
Klientcertifikat ska vara av PKCS12-format.
För autentisering av anropande använder SSO-tjänsten
certifikatets Serialnumber som finns i Subject i certifikatet.
Detta ska skickas till kontaktperson på Softronic.
Anslutande system måste lita på SITHS CA v3 (produktion)
samt SITHS CA Test v3 (test)
Översiktlig dokumentation av anslutande system (externt
system).
Dokumentation bör belysa:
- Flödesbeskrivning
- Tillgänglighet och förväntade volymer
- Säkerhet
- Testmiljö och testdata
Kontaktuppgifter/kontaktvägar till förvaltningsorganisation för
tjänsten.
Information om vilka användare tjänsten skall exponeras för (se
även avsnitt 2.2 Exponering av tjänster mot användare).
Information visas för invånaren. Namn på tjänst, rubriker och
informationstexter (se avsnitt 2.3 Möjliga anpassningar i
användargränssnittet ):
- Namn på tjänsten
- Namn på knapp som startar tjänsten
- Beskrivning av tjänsten
- Säkerhetsnivå (e-leg/alla)
- Text vid högre säkerhetsnivå
Vid anslutning är det även önskvärt att det finns ett
motsvarande testsystem att ansluta mot. Motsvarande
information som för produktionssystemet behöver
tillhandahållas.
För att kunna verifiera att lösningen fungerar och för felsökning
i förvaltningen behöver det finnas testpersoner upplagda i
externt system.
En plan för hur lösningen verifieras vid anslutning/driftsättning
behöver fastställas i samband med projektstart.
En tidplan för när tjänsten förväntas driftsättas och när tester
skall genomföras.
Observera att det är anslutande parts ansvar att se till att certifikat från SITHS är giltiga och att förnya dessa då
giltighetstiden går ut.
MVK SSO 2.0 introduktion
18 (18)