Page History
...
Table of Contents | ||
---|---|---|
|
Numbered Headings | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Hvad er NSPDen Nationale Service Platform er en teknisk platform, der sammen med en mængde standarder og aftaler gør det muligt at udbyde et antal services til offentlige og private it-systemer. I dette dokument vil de vigtigste elementer af NSP blive gennemgået og forklaret.Den tekniske platformNSP platformen består af en Linux distribution med en JBoss 6 Wildfly applikationsserver. Alle komponenterne på platformen kører ovenpå denne applikationsserver og anvender en MySql MariaDB database som persistentlag. Foran JBoss Wildfly applikationsserveren er der en loadbalancer. Valget af JBoss Wildfly dikterer at alle komponenter er skrevet i programmeringssproget Java (eller andre sprog der kan afvikles i en Java VM), der er dog ingen krav til hvilke sprog anvendere af platformen skal benytte.
WebservicesAlle webservices der udbydes på NSP overholder standardenDe eksternt vendte services på NSP udstilles for nuværende som SOAP/XML webservices typisk som identitetsbaserede web services, der overholder “Den Gode Web Service” (DGWS) eller OIO-IDWS standarderne. Du kan læse mere om DGWS hhv. OIO-IDWS her:
Disse sider redegør også for en række af de sikkerhedshensyn, overordnede sikkerhedsværn og hjælperedskaber, der er udviklet til NSP. Alle forespørgelser og svar sendes som SOAP-XML over HTTP protokollen. NogleNogle af de webservices som identitetsservicen (STS) udbyder er dog undtaget fra reglen om DGWS. I NSP regi er SEAL.Java og SEAL.Net blevet udviklet for at hjælpe både anvendere og udstillere af services. SEAL pakker de mange XML og sikkerhedsstandarder ind i simple metoder, og sikrer en uniform serialisering og deserialisering af forespørgelser og svar. SundhedsdatanettetNSP er placeret på sundhedsdatanettet og adgang hertil kræver derfor en godkendelse fra MedCom. Anvendelsen af Sundhedsdatanettet gør at konfidentialiteten og integriteten af forespørgelser og svar er sikret. Se evt. ”Kom på NSP – kort forløbsbeskrivelse".Distribueret platformNSP er ikke blot en enkelt platform, men derimod flere instanser distribueret rundt omkring i landet. Der findes en Central NSP (cNSP), regionale NSP'er (dNSP) og en såkaldt BackOffice instance (DoDi)BackOffice instans. De regionale og den centrale NSP er stort set ens, men deres anvendere er forskellige. Hver region har sin egen NSP som blandt andet anvendes af hospitalerne, hvorimod den centrale NSPs anvendere f.eks. er lægepraksiser og plejehjem. Denne distribuerede tilgang betyder, at der er et flow af data fra BackOffice platformen til både cNSP og dNSP. F.eks. kommer opdateringer til stamdata ind i BackOffice fra flere kilder for derefter at flyde ud på NSP'erne.MiljøerUd over produktionsmiljøet findes der to fire testmiljøer som anvendere kan få adgang til. Adgang kræver en aftale med NSP-operatøren samt oprettelse af testcertifikater mv. En guide til tilslutningsforløbet kan ses i "Adgang til fælles testmiljøer".Hvem styrer NSPDen Nationale Service Platform (NSP) ejes og styres af National Sunheds-It (NSI), der er en sektor under Statens Serum Institut (SSISundhedsdatastyrelsen (SDS). Alle opgaver på NSP udliciteres efter gældende EU-regler og er fordelt på et par håndfulde it-firmaer. NSP opereres af Sundhedsdatastyrelsen med bistand fra Capgemini A/S og driftes af Netic A/S. Support til anvendere og udstillere leveres af IBM, Netic A/S og Arosii A/S. Komponenterne på NSP ejes af NSI SDS, men er udviklet af flere forskellige leverandører.Sikkerhed på NSPEn af de vigtigste aspekter af NSP er den sikkerhedsmodel, der er lagt over alle komponenter på platformen. For at kalde en komponent på NSP skal en anvender medsende et id-kort signeret af en identitetsudbyder i hvert kald. De vigtigste aspekter af sikkerhedsmodellen gennemgås i de følgende afsnit, og den samlede model er beskrevet i Den Gode Webervice.CertifikaterSikkerheden på NSP bygger på certifikater udstedt af Nets DanID. Der findes 3 forskellige slags certifikater som kan bruges på NSP:
MedarbejdercertifikaterMOCES certifikater udstedes til en enkelt person ansat ved en virksomhed og repræsenterer dennes relation til virksomheden. Hvert medarbejdercertifikat har et entydigt CVR/RID- nummer der er opbygget af virksomhedens CVR-nummer, samt et ressource identifikationsnummer. Dette CVR/RID-nummer indgår i ejerinformationen i certifikatet.VirksomhedscertifikaterVOCES certifikater udstedes til selve virksomheden og er ikke knyttet til nogen person. Virksomhedens CVR-nummer indgår i ejerinformationen i certifikatet.FunktionscertifikaterFOCES certifikater udstedes til en applikation, en enhed, en proces eller en service hos en virksomhed. De bruges primært til automatiske batch processor. Virksomhedens CVR-nummer indgår i ejerinformationen i certifikatet. NSP anbefaler anvendelsen af FOCES certifikater set i forhold til VOCES.Infrastruktur (DanIDNets og test/prod føderation)Certifikater udstedt af Nets DanID til brug på NSP hører enten til under testmiljøet eller produktionsmiljøet. Et certifikat kan kun bruges i det miljø, det er udstedt til.Id-kortEt id-kort er et XML-dokument der indeholder informationer om den person, virksomhed eller applikation, som foretager en forespørgsel mod en NSP-service. Id-kortet medsendes som en del af SOAP-headeren i alle kald, der foretages mod en komponent på NSP. Id-kortet anvendes af serviceudbyderen til at verificere identiteten af anvenderen, samt til at undersøge om vedkommende er berettiget til at få adgang til servicen. Der er to slags id-kort på NSP, et brugerid-kort og et systemid-kort. Brugerid-kortet anvendes sammen med et medarbejdercertifikat og systemid-kortet anvendes sammen med et virksomhedscertifikat eller et funktionscertifikat. Et id-kort indeholder blandt andet følgende oplysninger:
Føderation og ombytning af id-kortI stedet for at alle komponenter på NSP skal kunne verificere alle de certifikater som er udstedt til samtlige anvendere, er der indført en føderation hvor anvenderens id-kort bliver signeret af en identitetsudbyder (STS). Anvendelsen af en identitetsudbyder er skitseret nedenfor
Hvad findes der på NSPHjælp til anvendereUd over komponenter der udstiller kernefunktioner fra forskellige forretningsområder, er der to komponenter på NSP'en, der hjælper anvendere med at kalde andre komponenter. De to komponenter er afkoblingskomponenten (DCC) og gatewayen (GW).AfkoblingskomponentenI stedet for at kalde de forskellige komponenters webservices direkte, tilbyder afkoblingskomponenten at fungere som en softwarerouter for anvenderen. Komponenten har en konfiguration der indeholder en mapning mellem SOAP Actions og endpoints (Se f.eks. mapningen for cNSP prod her Inventory - cnsp DCC ). På den måde er komponenten i stand til at viderstille et kald ud fra værdien af HTTP-headeren. Det anbefales at anvendere altid kalder komponenternes webservices gennem afkoblingskomponenten.GatewayenFor at anvendere af NSP kan tilbyde Single Sign-on til slutbrugerne, er det nødvendigt at hvert enkelt it-system ikke skal udstede et id-kort for den samme bruger. Gatewayen tilbyder derfor at holde en cache af id-kort som alle anvendere kan deles om. Når en slutbruger logger på et it-system og udfører en handling der kræver et id-kort, sendes forespørgslen gennem gatewayen, der indsætter det korrekte id-kort og vidersender til den valgte webservice. Hvis cachen ikke indeholder et gyldigt id-kort for slutbrugeren må it-systemet oprette et nyt, som herefter gemmes i cachen. Gatewayen anvender WSAddressing standarden når den skal afgøre hvor en forespørgsel skal sendes videre til.ForespørgselFølgende er en kort gennemgang af hvordan anvendelsen af DCC og GW kan foregå fra eksempelsystemet ABC til eksempelservicen XYZ:
StamdataregistreNSP importerer stamdata fra et antal nationale registre og tilbyder adgang hertil gennem Stamdata-komponentens services. Følgende stamdataregistre er tilgængelig på NSP:
ForretningsserviceFølgende forretningsservice KomponenterFølgende komponenter er tilgængelige på en NSP: Komponent
| NAS | Link | Link | ||||||||||||||||||||||||||||||||||||||
Behandlingsrelationsservicen | BRS | Link | Link | ||||||||||||||||||||||||||||||||||||||
Afkoblingskomponenten | DCC | Link | Link | ||||||||||||||||||||||||||||||||||||||
Fødselsindberetningsservice | FIBS | Link | Link | ||||||||||||||||||||||||||||||||||||||
Min log | MINLOG | Link | Link | ||||||||||||||||||||||||||||||||||||||
Nationalt Patient Index | NPI | Link | Link | ||||||||||||||||||||||||||||||||||||||
NSP Test service | NTS | Link | N/A | ||||||||||||||||||||||||||||||||||||||
Stamdatamodul | SDM | Link | Link | ||||||||||||||||||||||||||||||||||||||
Gateway | GW | Link | Link | ||||||||||||||||||||||||||||||||||||||
Security Token Service | STS | Link | Link |
|
I de følgende afsnit gennemgås kort hver komponents webservices. For yderligere information henvises der til "Overblik over NSP services"
National AdviseringsserviceBasisservice
Følgende services er tilgængelige i NAS:
Service | Endpoint | Adgangskrav |
---|---|---|
Notification broker service | /notificationbroker/service | Idkort |
Subscription manager service | /subscriptionmanager/service | Idkort og whitelist |
Id list service | /idlist/service | Idkort og whitelist |
Pull point service | /pullpoint/service | Idkort og whitelist |
Pull point factory service | /pullpointfactory/service | Idkort og whitelist |
Pull point factory er i stand til at oprette pull points som derefter kan anvendes i Pull Point servicen til indhentning af adviseringer. Id list servicen anvendes til oprettelse og vedligeholdelse af Id lister. Subscription manager tilbyder operationer til abonnering på emner og Notification broker muligheden for at publicere adviseringer til abonnenter.
Behandlingsrelationsservicen
Følgende services er tilgængelige i BRS:
Service | Endpoint | Adgangskrav |
---|---|---|
Behandlingsrelationsservice | /brs-nsp/service/brs | Idkort og whitelist |
Generisk opsamlingsservice | /gos/service/gos | Idkort og whitelist |
Notifikationsservice | /gos/service/notification | Idkort og whitelist |
CPR abonnementsservice | /cprabbs/service/cprabbs | Idkort og whitelist |
Behandlingsrelationer kan slås op via Behandlingsrelationsservicen. Opsamlinger bestilles i generisk opsamlingsservicen og notifikationsservicen. De kan derefter bruges til at tjekke eventuelle notifikationer som opsamlingen har givet anledning til. CPR abonnementsservicen kan bruges til at forespørge på eventuelle ændringer i CPR data for de CPR-numre man abonnerer på.
Afkoblingskomponenten
Følgende services er tilgængelige i DCC:
Service | Endpoint | Adgangskrav |
---|---|---|
Afkoblingsservice | /decoupling | Whitelist |
Afkoblingskomponenten virker som en softwarerouter, der sender et request videre til en anden service baseret på den SOAP Action der angives.
Fødselsindberetningsservice
Følgende services er tilgængelige i FIBS:
Service | Endpoint | Adgangskrav |
---|---|---|
Fødselsindberetningsservice | /fibs | Idkort |
Fødselsindberetningsservicen fungere som en proxy til Kirkeministeriets jordemoder-service.
Minlog
Følgende services er tilgængelige i Minlog:
Service | Endpoint | Adgangskrav |
---|---|---|
Minlogservice | /minlog | Idkort og whitelist |
MinLog registreringsservice | /minlog-registration/service | Idkort og whitelist |
Minlogservicen kan anvendes til at lave opslag i opsamlede logs i Minlog-systemet baseret på et CPR-nummer. MinLog registreringsservicen kan bruges til at oprette logs i Minlog-systemet.
Nationalt Patient Indeks
Følgende services er tilgængelige i NPI:
Service | Endpoint | Adgangskrav |
---|---|---|
NPIService | /npiservice | Idkort og whitelist |
NPIservicen gør det muligt at foretage opslag i Det Nationale Patient Indeks.
NSP Test service
Følgende services er tilgængelige i NTS:
Service | Endpoint | Adgangskrav |
---|---|---|
Testservice | /nts/service | Idkort |
Testservicen anvendes til at teste om en forespørgsel mod en anden komponent overholder standarden "Den Gode Webservice (DGWS)".
Stamdata modul
Følgende services er tilgængelige i SDM:
Service | Endpoint | Adgangskrav |
---|---|---|
Stamdata kopiregisterservice | /stamdata-batch-copy-ws/service/StamdataReplication | Id-kort og whitelist |
Stamdata autorisationsregister enkeltopslagsservice | /stamdata-authorization-lookup-ws/service/AuthorizationService | Id-kort og whitelist |
Stamdata Det Gode CPR Opslag (v.1.0.0) | /stamdata-cpr-ws/service/DetGodeCPROpslag | Id-kort og whitelist |
Stamdata Det Gode CPR Opslag (v1.0.2) | /stamdata-cpr-ws/service/DetGodeCPROpslag-1.0.2 | Id-kort og whitelist |
Stamdata CPR enkeltopslagsservice | /stamdata-cpr-ws/service/StamdataPersonLookup | Id-kort og whitelist |
Kopiregisterservicen gør det muligt for en anvender at hente en komplet kopi af et bestemt register. Enkeltopslagsservicen til Autorisationsregisteret og CPR registeret gør det muligt at lave enkelte opslag i disse registre.
Gateway GW
Følgende services er tilgængelige i GW:
Service | Endpoint | Adgangskrav |
---|---|---|
Idkortservice | /sosigw/service/sosigw | Ingen |
Proxyservice | /sosigw/proxy/soap-request | Ingen |
Idkortservice anvendes til at få udstedt og cachet et id-kort. Proxyservice bruges til at få udskiftet et usigneret id-kort med et der tidligere er blevet oprettet i cachen, og sende forespørgelsen videre til den ønskede webservice.
Security Token Service
Følgende services er tilgængelige i STS:
Service | Endpoint | Adgangskrav |
---|---|---|
SecurityTokenService | /sts/services/SecurityTokenService | bruger signeret Id-kort |
NewSecurityTokenService | /sts/services/NewSecurityTokenService | bruger signeret Id-kort |
IdentityTokenService | /sts/services/IdentityTokenService | Id-kort |
OIOSaml2SosiService | /sts/services/OIOSaml2Sosi | Id-kort |
Sosi2OIOSamlService | /sts/services/Sosi2OIOSaml | Id-kort |
SecurityTokenService og NewSecurityTokenService anvendes til at få udstedt et id-kort. IdentityTokenService omveksler et id-kort til en OIOIDWS-H Identity Token. De to sidste listede services bruges til at veksle mellem NemLogin tokens og id-kort.
basisservice er tilgængelige på NSP:
Multiexcerpt include | ||||||
---|---|---|---|---|---|---|
|
For yderligere information henvises der til "NSP services"
Støtteservice
Følgende støtteservice til testformål er tilgængelige på NSP:
Multiexcerpt include | ||||||
---|---|---|---|---|---|---|
|