Introduktion
Formål
Formålet med dette dokument er at beskrive systemarkitekturen for Nationalt eCPR.
Læsevejledning
Dokumentet er tiltænkt udviklere og IT-arkitekter med interesse i Nationalt eCPR og dens opbygning. Siden indeholder primært information om Nationalt eCPR-serrvicen i forhold til dens relationer til andre systemer, og i første omgang dermed ikke om servicens interne opbygning.
Definitioner og referencer
NSP | National Service Platform |
eCPR2 | Erstatnings CPR |
DGWS | Den Gode WebService |
NAS | National adviseringsservice |
SCES | CPR enkeltopslagsservicen |
Introduktion til eCPR
Løsningens Afhængigheder
Nationalt eCPR anvender følgende NSP komponenter:
Komponent | Beskrivelse |
---|---|
DCC (DeCoupling Component), også kendt som SOSI afkoblingskomponenten, fungerer som en webservice gateway og foretager routing af forespøgsler mod services der udstilles på eller via NSP'en. | |
National Adviseringsservice på NSP'en. | |
Sundhedsvæsenets Elektroniske Brugerstyring (Implementeres i senere version) | |
Stamdatamodul på NSP, herunder CPR-enkeltopslag (SCES) |
Løsningens opbygning
Nationalt eCPR består af én javabaseret web-service, nemlig eCPR-service. Den udstilles på NSP via DCC, og udstiller ligeledes adviseringer gennem NAS på NSP. For at servicen fungerer har den ligeledes en ekstern afhængighed til NSP stamdata gennem views, herunder SCES (CPR-enkeltopslag). I nedenstående diagram ses et arkitektur overblik over servicen og dens eksterne afhængigheder:
Skal SOSI-GW ind eller bruger vi ikke det?
* Et klientsystem kunne eksempelvis være FMK-online: FMK-online giver sundhedsfaglige og borgere adgang til Fælles Medicinkort, Det Danske Vaccinationsregister, medicintilskud, sundhedsfaglige bemyndigelser og Nationalt eCPR.
** Sundhedsvæsenenets elektroniske Brugerstyring (SEB) bruges ikke i nuværende version af Nationalt eCPR. I øjeblikket kan Nationalt eCPR koordinatorer/Web administratorer indskrives direkte i den interne MariaDB. I fremtiden vil denne brugerstyring foregå gennem SEB.
Både service og dataformater for Nationalt eCPR er udviklet til at være generelle og fleksible, så de kan understøtte forskellige scenarier for brug, og implementeringsstrategier på tværs af sundhedsvæsenets aktører.
Nationalt eCPR-service er beskrevet i eCPR - Snitfladebeskrivelse
Dataformater er beskrevet i eCpr2
Sekvensdiagrammer
Nedenfor ses 2 sekvensdisagrammer. De blå komponenenter hører alle til eCPR-servicen, og illustrerer hvordan flowet overordnet set forløber internt, uden at gå i detaljer med implementationen.
Sekvensdiagrammet for CreatePersonRequest ses nedenfor.
Hvad skal sikkerheds servicen/contexten hedde? Giver det her mening for dig Markus?
I forløbet "CreatePerson" bruges Cpr-enkeltopslag samt NAS ikke. I sekvensdiagrammet for UpdatePersonRequest ses hvordan Cpr-enkeltopslag og NAS bruges i et UpdatePerson kald. Cpr-enkeltopslag bruges kun, hvis UpdatePerson indeholder et CPR-nummer, hvorved der bliver tjekket op mod stamdata, om CPR-nummeret eksisterer. I nedenstående sekvensdiagram antages det, at UpdatePersonRequest laves med et medsendt CPR-nummer:
Sikkerhed
Det her afsnit er lidt usammenhængende og sammensat af forskellige tekststykker. Jeg ved ikke så meget om sikkerheden, men måske kan du (Markus) rette det til, eller vi kan snakke om det.
Sikkerhedsmodellen for National eCPR2-servicen er baseret på MedComs “Den Gode Webservice” og brug af SOSI-Gateway. Sundhedsfaglige brugere anvender SOSI sikkerhedsmodellen, hvor adgang gives via lokale fagsystemer og udveksles med NSP infrastrukturen, herunder Nationalt eCPR, således sundhedsfaglige brugere er identificeret med navn, rolle og organisation. Sundhedsfaglige brugere får udstedt erhvervsidentiter via de organisationer de er tilknyttet. Disse erhvervsidentiteter vedhæftes i SOSI sikkerhedsmodellen.
Der anvendes primært Id-kort signeret med MOCES-medarbejdersignatur (sikkerhedsniveau 4) men enkelte dele af snitfladen kan anvendes med et Id-kort signeret med VOCES-virksomhedssignatur (sikkerhedsniveau 3). I FMK's sikkerhedsmodel er et Id-kort gyldig i 9 timer. (Spørgdmål fra Mette: Hvordan er dette efter skiftet til MitID Erhverv?Og hvor længe er et id-kort gyldigt når vi ikke benytter fmks sikkerhedsmodel?)
Forretningsrelateret data
Data, der anvendes forretningsmæssigt, f.eks. sygehusafdelingsnummer, ydernummer og autorisationsnummer, bør medsendes i den forretningsmæssige del af dokumentet, og ikke hentes fra dokumentheaderen. Det kan ikke udelukkes at f.eks.:
En sekretær på en sygehusafdeling logger ind med SKS-sygehusafdelingsnummer med 6 cifre og foretager en opdatering af data på et afsnit angivet med 7 cifre
En lægepraksis har to ydernumre, der logges ind med det ene men sendes data for begge.
Skal der senere opstilles regler for hvorvidt dette skal være muligt bør valideringen af disse regler holdes adskilt fra den forretningsmæssige implementering. Dette bør ske for at minimere risikoen for at ændringer i sikkerhedsmodellen påvirker denne.
Adgangsstyring
Arkitekturbeslutninger og jura
I følgende tabel er listet beslutninger, som har indvirkning på arkitekturen bag Nationalt eCPR.
Dato | Emne | Problem, beskrivelse og beslutning | Afklaret med |
---|---|---|---|
| Opbevaring af data | Problem Beskrivelse Beslutning | SDS's juridiske afdeling |
| Genbrug af eCPR-numre | Problem Beskrivelse Dog kan der stadig være lokale journaler hos andre aktører som endnu ikke har fået omlagt patientjournalen. Hvis eCPR-nummeret 'genbruges' til en ny patient risikerer man derfor at flere patienters journaler samkøres; at 'gammelt data kobles på ny patient'. Beslutning | SDS's juridiske afdeling |
| Autorisation | Problem Beskrivelse Beslutning | SDS's juridiske afdeling |
| Brug af eCPR udenfor sundhedsvæsenet | Problem Beskrivelse Beslutning | SDS's juridiske afdeling |
| Log i MinLog Borgerlog | Problem Beskrivelse Tilgang til og ændringer i CPR-registreret logges heller ikke i MinLog Borgerlog. Beslutning | SDS's juridiske afdeling |
| Log i MinLog Medhjælpslog | Problem Beskrivelse Beslutning | SDS's juridiske afdeling |
| Anvendelse af SKRS | Problem Beskrivelse SKRS bruges bl.a. til at have en lokale kope af CPR registret i dag. Beslutning | SDS's juridiske afdeling |
| Valg af X-eCPR format | Problem Beskrivelse 1. Brug af formatet ”X-eCPR” i de lokale systemer 2. Brug af formatet ”D-eCPR+kildeangivelse” i de lokale systemer Beslutning | Styregruppen for eCPR-projek |
Jeg foreslår at "Beslutninger ift arkitektur og Jura" kan indsættes her