Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Navitabs
rootSundhedsadresseringsservicen (EAS) - Leverancebeskrivelse
includeroottrue

...


Table of Contents

Introduktion

Formål

Dette dokument indeholder en beskrivelse af hvordan EAS installeres på et NSP backend miljø.

Læsevejledning

Læseren forventes at have kendskab til Sundhedsdatastyrelsens platform NSP, samt generelt kendskab til WildFly applikation server, Docker, Docker Compose samt Ubuntu Linux operativ system.

Definitioner og referencer


NSPDen nationale service platform
DriftenNSP Leverandøren og NSP Driftleverandøren
SDSSundhedsdatastyrelsen
EASEHMI Sundhedsadresseringsservice
EEREHMI Endpoint Register
KeycloakEHMI Keycloak Authentication server

Installation

EAS anvender NSP's Continuous Integration og Continuous Deployment miljøer til byg og leverance af komponenten.

Jenkins

EAS bygges med NSP's Jenkins server via følgende jobs:

...

NSP-Leverandøren er selv ansvarlig for at pushe release versioner af EAS til NSP Docker Registry igennem Jenkins

Docker

EAS består af følgende Docker images, som pushes til NSP Docker Registry:

Docker Compose

EAS leveres samtidig som et sæt af Docker Compose filer i folderen https://git.nspop.dk/projects/COM/repos/sundhedsadresseringsservice/browse/compose 

...

configuration

Her ligger alle de konfigurationsfiler som det forventes af driften tilretter til det anvendte miljø. Se EAS Driftsvejledning.

developmentHer ligger en Docker Compose fil til brug for udvikling. Se EAS - Guide til udviklere.
release

Her ligger Docker Compose-filen, som forventes at driften anvender på både test og produktionsmiljøerne.

  • docker-compose.yml

Krav til miljø

Krav til applikationsservere

Komponenten EAS er udviklet og testet i Docker ved anvendelse af imaget "registry.nspop.dk/platform/nsp:latest".

...

Komponenten EAS-Nginx er udviklet og testet i Docker ved anvendelse af imaget ubuntu:22.04

Krav til operativsystem

Der stilles ingen krav til operativsystemet udover, at det skal være Linux, og docker skal være installeret.

Krav til adgang til andre services

EAS kræver adgang til "Personinformation", "SikredeInformation", "SORES" og Keycloak på NSP.

Eksternt kræves adgang til EER, som findes på SDN.

Konfiguration

I folderen "compose/configuration" findes følgende konfigurationsfiler:

...

I EAS - Driftsvejledning er de enkelte filer gennemgået i detaljer.

Certifikater

Udover konfigurationsfiler er der en del certifikater for at understøtte sikkerhedsarkitekturen i EHMI systemlandskabet. Kommunikationen mellem services foregår med mTLS.

Nedenstående tabel beskriver de påkrævede certifikater - yderligere beskrivelse findes i EAS Driftsvejledning.

ServiceStiBeskrivelse
EAS-Ingress-Nginx

/etc/ssl/server.crt

TLS Servercertifikat for EAS servicen 
EAS-Ingress-Nginx

/etc/ssl/server.key

Privatnøgle for TLS Servercertifikat for EAS servicen
EAS-Ingress-Nginx

/etc/ssl/ehmi-ca.pem

Udstedende CA for det klientcertifikat der anvendes ved kald mod EAS servicen. Bemærk SKAL indeholde både intermediate og rodcertifikat.
EAS-Egress-Nginx

/etc/ssl/ehmi-auth/client.crt:

Klientcertifikat der anvendes ved kald mod Keycloak servicen. Bemærk SKAL indeholde både intermediate og rodcertifikat.
EAS-Egress-Nginx

/etc/ssl/ehmi-auth/client.key

Privatnøgle for klientcertifikat der anvendes ved kald mod Keycloak servicen
EAS-Egress-Nginx

/etc/ssl/ehmi-eer/client.crt

Klientcertifikat der anvendes ved kald mod EER servicen. Bemærk SKAL indeholde både intermediate og rodcertifikat.
EAS-Egress-Nginx

/etc/ssl/ehmi-eer/client.key

Privatnøgle for klientcertifikat der anvendes ved kald mod EER servicen
EAS-Egress-Nginx

/etc/ssl/certs/ca-certificates.crt

 

CA Bundle for TLS servercertifikat for både Keycloak og EER Servicen.
Note: Hvis ikke angivet, anvendes standard CA-bundle i Linux.

SLA logning

Da NSP SLA-logning i skrivende stund ikke understøtter Java 21, er der lavet en primitiv form for SLA-logning i stedet. Der logges tidsforbrug for hver af integrationerne, og skelnes mellem succesfulde og fejlede kald. Fx logges der følgende for et succesfuldt kald til SORES:

...

12:14:07 INFO  dk.nsp.eas.integrations.sores.service.SoresServiceImpl - SLALog: name=SoresServiceImpl.getSorEntityV3, startTimeNanos=7639942720150, endTimeNanos=7639989222484, 
startTimeMillis=1760609647144, endfTimeMillis=1760609647191, durationMillis=47, callOk=false, errorMessage=Fejl ved kald til SORES

Afvikling

EAS startes og stoppes med Docker Compose kommandoer.


NSP Miljø

På et NSP miljø hentes "compose" folderen for den ønskede version og kommandoen "docker-compose -f <compose-file> up" køres i folderen "release".