Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

GM-Facaden er en FHIR-baseret komponent, som udstiller data fra Graviditetsmappen via NMHD komponenten (Generisk udstilling (MHD) - Leverancebeskrivelse). NMHD servicen er en generisk service, som har til formål at udstille data hentet fra dokumentdelingsservicen via en generisk FHIR-snitflade. Adgangen styres via NSP’s sikkerhedskomponenter (Accesshandler, STS) og kræver, at anvenderens OIDC er godkendt af SDS (Sundhedsdatastyrelsen) og whitelisted i de relevante komponenter.



Forklaring omkring ovenstående arkitekturtegning: 

  • Borgeren åbner 3. parts appen

  • Appen sender borgeren videre til MitID via en OpenID Connect broker (identity serviceprovider).

  • Borgeren logger ind, og broker’en sender et godkendt ID-token tilbage til 3. parts backend.

  • Backend hos serviceprovider validerer tokenet og kontrollerer rettigheder.

  • Backend laver en sikker opkobling via Sundhedsdatanet.

  • Backend kalder GM facadelaget med GM-services på NSP (via FHIR/REST/JTP-H) for at hente data fra graviditetsforløbet. 

  • De hentede data sendes tilbage til appen, som viser dem for borgeren.

Definitioner og referencer

Reference / termBeskrivelse
GM FacadeGraviditetsmappens app facade
OIDCOpenID Connect – standard for identitets- og adgangsstyring.
JTP-H

Joint Trust Profile for Health – dansk profil for anvendelse af OIDC i sundhedsdomænet.

JWT Token Profile for Healthcare (se NSP Access Handler - Design og arkitekturbeskrivelse

FHIR

FHIR står for Fast Healthcare Interoperability Resources.

Det er en standard udviklet af HL7 (Health Level 7) til elektronisk udveksling af sundhedsoplysninger.

NSISNational Standard for Identiteters Sikringsniveau.
SDSSundhedsdatastyrelsen – ansvarlig for godkendelse og whitelisting af OIDC.
NMHD

National Mobile Health Data – komponent i NSP-infrastrukturen.

MHD  = Mobile Access to Health Documents

STSSecurity Token Service – håndterer sikkerhedstokens i NSP.
AccesshandlerNSP-komponent, der kontrollerer adgang til GM-Facaden.



Relevante use-cases

Tredjepart Relevante usecases fra tredjepart systemer som ønsker at hente journaldata via GM-Facaden (Borgervendt app hvor borgeren selv kan hente data via en app) 

...

Test og validering af integration med GM-Facaden i NSP’s testmiljøer.

...

Usecase 1: Borger kan få vist alle deres Graviditetsdata fra Graviditetsmappen (forudsætning: Logget ind med MitID)

Usecase 2: Borger kan sende alle graviditetsdata til egen Digitale Postkasse 

Læsevejledning og forudsætninger

...

Dokumentation for krav til JTP-H findes her: NSP Access Handler - Design og arkitekturbeskrivelse 

Administrative forudsætninger (fx. Tilslutningsaftale – Bestillingsark for adgang til eksternt testmiljø

Bruno Collection

...

- GM-Facade 

FAQ NSP miljøer - NSP services - Global Site

Sikkerhed

Adgangen sker gennem NSP’s sikkerhedskomponenter og følger JTP-H-profilen, hvor borgeren logger ind med MitID, og et OIDC-token ved kald til GM-Facaden.

...

  1. Anvendelse af godkendt OIDC

    • Tredjeparts anvender kan benytte en allerede godkendt og trusted OIDC.

    • Dette er den enkleste løsning, da OIDC’en allerede er kendt og godkendt af SDS og derfor hurtigt kan konfigureres i Accesshandleren.

  2. Anvendelse af ny OIDCny OIDC

    • Hvis 3. parts anvender vælger at etablere en egen OIDC, skal den leve op til minimum NSIS-niveau Betydelig, følge JTP-H, være anmeldt til NSIS-tilsynet og underlagt årlige revisioner.

    • OIDC’en skal desuden understøtte de flows, som GM-Facaden kræver.

    • Denne løsning er mulig, men væsentligt mere kompleks og kræver tæt dialog med SDS.

...

Adgang sker ved, at borgeren logger ind og får udstedt et JTP-H token fra en OIDC-udsteder. Dette token anvendes som som bearer token i REST-kaldet mod GM-Facaden og giver kun adgang til borgerens egne dokumenter.

...

Tredjeparts anvenderemå anvende egen OIDC , hvis følgende betingelser er opfyldt:

  • OIDC følger JTP-H-profilen.

  • OIDC er godkendt af SDS.

  • OIDC lever op til NSIS niveau Betydelig (herunder anmeldelse til NSIS-tilsynet og årlig revision).

(se afsnit 2.7) 

Proces for whitelisting

For at få adgang til GM-facaden på NSP og kunne hente data fra Graviditetsmappen skal man have tilsluttet sit system. 

For yderligere information: Administrative forudsætninger

...

  1. Ejeren af OIDC-serverenopretter supportsag til NSP/SDS: Supporthenvendelse

  2. SDS godkender OIDC’ens tekniske og sikkerhedsmæssige opsætning.

  3. SDS konfigurerer følgende:

    NMHD - Accesshandler

    • GM-Facade - Accesshandler

    • STS (Whitelisting)


  4. Accesshandler-konfigurationen udvides til at acceptere tokens fra den nye issuer.
    Se teknisk beskrivelse her:
    Konfiguration af nye issuers i Accesshandler

...

Snitfladebeskrivelse og brug

Tredjeparts app kalder Facadelaget, og anvender GM-FHIR modellen til at lave deres brugergrænseflader.

GM-Facaden tilbyder FHIR-baserede endpoints til hentning af journaldata for borgere i graviditetsforløb.
Adgangen sker via NSP’s sikkerhedskomponenter, hvor anvenderen kalder GM-Facaden med et autoriseret JTP-H-token udstedt af en godkendt OIDC.

...

Adgang til servicen sker ved at medsende en Authorization-header med bearer-token i form af JTP-H.

MitID Testtool: https://pp.mitid.dk/test-tool/frontend/#/view-identity

Hent Journal for borger

Endpoint:

...

https://test1-cnsp.ekstern-test.nspop.dk:8443/gmaf/api/2025/06/25/journal


Endpoints på TEST1 og TEST2: 

https://test1-cnsp.ekstern-test.nspop.dk:8443/gmaf

https://test2-cnsp.ekstern-test.nspop.dk:8443/gmaf

Fejlbeskeder

I fejl-scenarier vises disse fejlkoder:

...

Følgende brugere har journaldata på Test 1 og/eller Test 2: 


0708850322

CPR

KayaJokumsen
Navn 

2311890002

MedComs test-CDA'er

2007909198

To forløb - et gammelt og et aktivt
Test 1Test 2

0708850322

Kaya Jokumsenxx

1507939666

Minervaxx

1704799948

Mayaxx

2911039098

Poulinexx
0511820464 Malle Sörensenx 
1404049428Casandra Kantx 
1710969864SysMathisenx

0104800610

I uge 22

2506879852

I uge 23
3112929958
I uge 37
3107901832
I uge 38

0103964326

I uge 39

1804999948

I uge 40

0505058712

7 uger over termin

0302959730 

8 uger over termin

2608894570

11 uger over termin

1507939666

Minerva

2911039098

Pouline0511820464 Malle Sörensen1404049428Casandra Kant1710969864SysMathisen

1403879262 Testinna Termina xx
2610087224 

Bitte My Småland 

x

 

1408079612 Cirkeline Bublé x 

1905839596

DagmarNap
Dagmar Napolenex
 0904539384
AmbraSand
Ambra Sandx
2008902346
KimmiKimsen2108901238MimmiMimsen2208901234NinniNinsen2308901428OdaOddsen 1201664078LivaLiddelCPR1704999948
Kimmi Kimsenxx
3103809354Sulaimaxx
0202954618Tildexx
1412544605Tristinaxx


Eksempel kode og klient

Se integrations test i https://git.nspop.dk/scm/com/graviditetsmappens-app-facade.git for eksempel på komplet integration til komponenten.

...