1. Indholdsfortegnelse

2. Introduktion

2.1. Formål

Dette dokument er rettet mod systemadministratorer og driftspersoner, som skal kunne håndtere driftsmæssige aspekter af komponenten.

Driftsvejledningen indeholder information om MHD med hensyn til eksterne afhængigheder, standard placering af logfiler og konfigurationsfiler, og evt. krav til genstart af applikationer hvis komponenten ikke er responsiv.

I afsnit 3 (Komponenter) er beskrevet hvilke komponenter, der indgår i MHD og deres forventede placering med hensyn til platform.

Afsnit 5 (Konfiguration) beskriver aktuelle konfigurationsparametre for MHD henholdsvis Repository, samt eksempler på konfigurationsparameter-filer.

Afsnit 6.1, 6.2 og 6.3 (Overvågning) beskriver hvorledes MHD komponenterne overvåges.

I afsnit 6.4 er MHD-relaterede logfiler beskrevet, så disse evt. kan overvåges, og tillige danne baggrund for fejlsøgning.


Beskrivelse af standard fejlsøgning og start/stop vejledning for komponenterne er beskrevet i afsnit 7 (Standard fejlsøgning).

Specielle krav til backup er beskrevet i afsnit 8 (Krav til backup m.m.), ligesom procedure ved reetablering af komponenten ud fra backup beskrives.

2.2. Læsevejledning

Læseren forventes at have kendskab til NSP miljøet.

2.3. Definitioner og referencer

Definition

Beskrivelse

NSP Den nationale service platform
SDS Sundhedsdatastyrelsen

3. Komponenter

Dette dokument dækker følgende komponenter:

4. Daglig drift

Dette afsnit beskriver den daglige drift af systemet.

4.1. Relaterede services

MHD afhænger af tilstedeværelsen af en række andre services, og ved fejl i nogle af disse vil MHD fejle tilsvarende. Disse services er:

  • STS - Til veksling af JTPH til IDWS
  • Dokumentdelingservice (DDS) - til fremsøgning af dokumenter med ITI-18 og ITI-43

5. Konfiguration

Komponenterne afvikles i et docker compose setup, som ligger under https://git.nspop.dk/scm/com/mobile-access-to-health-documents.git


Den applikationspecifikke del af mhd'en konfigureres via filen /pack/wildfly/modules/dk/nsp/mhd/main/mhd.properties.

Property

Beskrivelse

Påkrævet

Default værdi

mhd.sts.url STS-url til endpoint til veksling af jwt til idws. Eksempel: https://test1-cnsp.ekstern-test.nspop.dk:8443/sts/services/JWT2Idws Ja

mhd.binary_link_prefix Prefix på de dokumentreferencer som returneres fra MHD. Prefixet skal matche den kørende instans adresse. Eksempel: http://test1-cnsp.ekstern-test.nspop.dk:8080/mhd/api Ja
mhd.cert.file_name Java keystore indeholdende et certikat  Ja
mhd.cert.password Adgangskode til keystore Ja
mhd.cert.alias Certifikatets alias i keystoren Ja
mhd.audience Det ønskede audience som idws token skal bruges til. I mhd skal dette sættes til https://audience.nspop.dk/dds for at kalde dokumentdelingsservicen Ja
mhd.dds.url Url til dokumentdelingsservicen. Eksempel: https://test1-cnsp.ekstern-test.nspop.dk:8443 Ja
mhd.empty-document-type-search-allowed Er det tilladt at undlade at begrænse søgning med type parameteren
false
mhd.empty-format-code-search-allowed Er det tilladt at undlade at begrænse søgning med format parameteren
false
mhd.document-types Kommasepareret liste af dokumenttyper som mhd fremsøger. Skal være angivet til: PRF:1.2.208.184.100.1,PSCR:1.2.208.184.100.1,PMR:1.2.208.184.100.1

Bemærk, denne liste er målrettet gravidmappensbehov og må derfor ikke udvides. Ønskes en mhd der understøtter andre dokumenter, kræver det en ny "fysisk" instans.
Ja
mhd.format-codes

Kommasepareret liste af format-koder som mhd fremsøger. Skal være angivet: urn:ad:dk:medcom:prf-v2.0:full,urn:ad:dk:medcom:pscr-v2.0:full,urn:ad:dk:medcom:pmr-v2.0:full

Bemærk, denne liste er målrettet gravidmappensbehov og må derfor ikke udvides. Ønskes en mhd der understøtter andre dokumenter, kræver det en ny "fysisk" instans.

Ja
mhd.dds.http.forward.headers

Kommasepareret liste af http headers der videresendes i request til DDS'en. 

Nej
mhd.sts.http.forward.headers

Kommasepareret liste af http headers der videresendes i request til STS'en.

Nej
mhd.httpclient.connectiontimeout.seconds

Forbindelse timeout i sekunder. 

Nej 25
mhd.httpclient.pooling.maxconnections.total

Totale antal HttpClients forbindelser der kan åbnes

Nej 200
mhd.httpclient.pooling.maxconnections.pr.route

Antal HttpClients forbindelser der kan åbnes pr. rute

Nej 20


Konfiguration af access-handler til validering af jtp-h tokens konfigureres med filerne i folderen /pack/wildfly/modules/system/layers/base/dk/sds/nsp/accesshandler/main. Filerne ctrl.skip og log.skip er tomme og selve konfiguration af accesshandleren ligger i filen jtph.properties:


     

Property

Beskrivelse

Påkrævet

Default værdi

jtph.enabled Enablement af validering af jtph-h. Skal være sat til true. Ja


jtph.issuers.sds.name

Udsteder af jtp-h token. Eksempel: https://test.cloud.idm.trifork.com/auth/realms/gravid Ja
jtph.issuers.sds.audience Tilladt audience. Eksempel: https://audience.nspop.dk/mhd Ja
jtph.issuers.sds.ttl Time-to-live benyttes pt. af access hander til at validere auth_time og iat. Derfor skal denne pt. sættes en måned. Eksempel: PT43200M 

Se evt. https://jira.nspop.dk/browse/SDS-8792
Ja
jtph.issuers.sds.assurance.level.1 Skal være sat til https://data.gov.dk/concept/core/nsis/loa/Substantial Ja
jtph.issuers.sds.assurance.level.2 Skal være sat til https://data.gov.dk/concept/core/nsis/loa/High Ja
jtph.issuers.sds.issuance.policy.1 Skal være sat til urn:dk:sds:policy:gm-access Ja

Keys: 

Keys definere properties krævet for at validere signaturen af et jtp-h token. Da der kan være flere gyldige tokens på samme tid, så er kid fra token en del af propertien. Dog skal man angive små bogstaver og kun de første 32 tegn fra kid'en. 

jtph.keys.<keyid>.type
Typen af certifikatet. Eksempel: pkcs12
Ja
jtph.keys.<keyid>.file
Java keystore indeholdende et certikat 
Ja
jtph.keys.<keyid>.password
Adgangskode til keystore
Ja
jtph.keys.<keyid>.alias Alias for certifikatet i keystore Ja


For mere information om konfiguration af access handler se NSP Access Handler - Driftvejledning#jtph.properties

5.1.1. log konfiguration

Der benyttes Log4j2. En konfiguration er findes i filen compose/configuration/log4j2.properties, hvor logs fra MHD skrives til filen:

/pack/wildfly/standalone/log/mhd.log

5.1.2. SLA-log konfiguration

MHD er en viderestillingsservice og der er ikke separat sla logning. I stedet logges udvalgte tider i MHD loggen. 

5.1.3. Whitelist konfiguration

MHD er en rest service, som ikke kræver whitelisting.

5.2. Monitorering

Til statuscheck af MHD udstilles <serverurl>/mhd/status som returnerer HTTP 200 hvis servicen i øjeblikket kører. 

6. Overvågning

MHD overvåges på <serverurl>/mhd/alarm.

6.1. Fortolkning af HTML overvågningsside

Alle overvågningssider returnerer enten status 200 hvis de i øjeblikket kører fint, status 404 hvis servicen ikke er deployeret og status 500, hvis der er opstået en fejl, og komponenten derfor ikke virker korrekt.

6.2. Audit log

Hvert kald til '/mhd/api/2025/05/06/DocumentReference' medfører en ny indgang i auditloggen, som er udfyldt med følgende komponenter:

komponent

Kontekst

Type

Nøgle

Information

MHD UUID for kaldet Følsom

PatientIdentifier

cpr på borger hvis dokumenter fremsøges
MHD UUID for kaldet Følsom

FormatCodes

Kommasepareret liste af kodeværdier for de dokumenter der fremsøges
MHD UUID for kaldet Følsom

DocumentTypes

Kommasepareret liste af dokumenttyper for de dokumenter der fremsøges

Hvert kald til '/mhd/api/2025/05/06/Binary' medfører en ny indgang i auditloggen, som er udfyldt med følgende komponenter:

komponent

Kontekst

Type

Nøgle

Information

MHD UUID for kaldet Følsom

repositoryId

Identifikator på repository på dokumentet der fremsøges
MHD UUID for kaldet Følsom

HomeCommunityId

Identifikator hvor dokumentet fremsøges fra
MHD UUID for kaldet Følsom

DocumentReference

Identifikator på dokumentet der fremsøges

7. Standard fejlsøgning

  • Ved problemer med indlæsning af servicens konfigurationsfiler bør man verificere at alle påkrævede properties er sat
  • En service kan stoppes og startes gennem docker.

8. Krav til backup m.m.

Det anbefales at aktuelle konfigurationsfiler til MHD er under versionskontrol og back up.


9. Dokument Historik

3/4 2025 Martin Henriksen/SDS Etablering af dokumentation
7/8 2025 Thomas Glæsner/Trifork Udfyldelse af relevant dokumentation
  • No labels