Introduktion

Formål

Vejledning til installation og konfiguration af Min Spærring, der består af to services:
Min Spærring administrationsservice og Min Spærring verifikationsservice.

Afsnit 2 indeholder servicekrav til det omliggende miljø, herunder krav til operativsystem og standardapplikationer, som f.eks. applikationsservere, databaseservere, Java og/eller .Net versioner mm., angivet på version og service pack niveau.

Afsnittene 3 og 4.3 indeholder information om konfiguration af applikationsserveren og databasen, herunder oprettelse af databaseskemaer.

Afsnit 4 beskriver hvorledes services deployeres, herunder om der er krav om evt. genstart af server eller andre applikationer. Ved opgradering af komponenten beskrives desuden tilstanden, systemet skal være i for at opgraderingen kan finde sted, f.eks. om applikationsserver og/eller databaseserver skal være stoppet.

Læsevejledning

Læseren forventes at have kendskab til National Sundheds-IT’s platform NSP, samt generelt kendskab til WildFly applikation server, MySQL, docker, docker-compose samt Ubuntu Linux operativ system.

Dokumentet beskriver ikke forhold der berører konfiguration på DoDi, NSP eller centrale ’NSP-lignende miljøer’ eller etablering og konfiguration af distribution af data fra DoDi til øvrige platforme.

Dokumentet er etableret på baggrund af test installation på NIAB (NSP in a box) test server version 2.35.

Hvor der i teksten er angivet <packing> refereres til topniveaufolderen for release-pakken med kildekode. Folderens navngivning afhænger af versionen på releaset.

Dokumenthistorik

VersionDatoAnsvarligBeskrivelse

1.0

29.06.2012

Systematic

Første udgave

1.1

19.06.2013

Systematic

Opdateret med NIAB 1.7.0

1.2

22.05.2014

Systematic

Generering af installationspakke beskrevet i afsnit 3.1 og refereret i kapitel 3 og 4.

1.3

28.11.2014

Systematic

Referencer til Nationalt Patientindeks (NPI) fjernet

1.4

19.11.2015

Systematic

Opgradering til WildFly

1.5

02.09.2016

Systematic

Beskrivelse af konfigurationsfiler til DCC Konfigurations Service (DKS) tilføjet.

1.6

18.11.2016

Systematic

Opdatering af afsnit 4.3.2 om brugen af VOCES/MOCES certifikater.

Whitelistning af anvendere flyttet til selvstændigt afsnit 5.

Fjernet beskrivelse om opsætning af logging-profil i standalone.xml i afsnit 4.3.7.

Opdateret filer opdateret i 4.3.5

1.7

13.06.2018

Systematic

Migreret til NSPOP SVN


22.10.2018KITDokument flyttet fra Word til Confluence. Original dokument navn var: INS0002 Installationsvejledning Samtykke Service.docx

19.03.2020KITTilrettelser i forhold til docker

09.11.2020KITSDS-3685: Min Spærring skal anvende SORES til SOR-SHAK opslag

06.05.2020KITSDS-2416: MinSpærring skal ændres til at kalde minlog2

Definitioner og referencer

DefinitionBeskrivelse

NSI

National Sundheds-IT

NSP

Den nationale service platform (inden for sundheds-IT)

SHAK

Sygehusafdelingsklassifikation

SOR

Sundhedsvæsenets organisationsregister

STS

Security Token Service

DODI

NSI platform til data opsamling og distribution

SOSI-seal

Et kodebibliotek der stilles til rådighed implementering af sikkerhed på for Web service klienter på DGWS

AliasBeskrivelse

Driftsvejledning

Driftsvejledning Min Spærring (SSE/11734/OHB/0002)

Krav til miljø

Krav til applikationsservere

Komponenterne er udviklet og testet i Docker ved anvendelse af imaget "registry.nspop.dk/platform/nsp:1"

Komponenternes konfiguration er således tilpasset deployering på WildFly 8.2 applikationsservere med OpenJDK 8

Krav til operativsystem

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

Krav til database

Databasen til NAS2 systemet er en selvstændig database og selvstændige tabeller i forhold til NAS1. NAS2 deler derfor ikke database med NAS1. 

Krav til hardware

De to services forventes ikke at have et væsentligt ressourceforbrug og der er således ingen krav til hardware.

Krav til adgang til andre services

Min Spærring administrationsservice foretager i visse situationer registrering af hændelser på borgers data i Min-log service.

Når en borger opretter, fjerner eller modificerer samtykker/spærringer for en anden borger, bliver dette ligeledes registreret i Min-log. 

Min Spærring anvender MinLogProvider til at registrere logninger i MinLog, og i den forbindelse skal Kafka properties for Min Log 2 konfigureres. 

Min Spærring anvender cprexists-servicen til at validere borgerens cpr-nummer ved oprettelse, opdatering eller sletning af spærringer.

Krav til datahåndtering

Min Spærring administrationsservice opdaterer og tilføjer borgeres registrerede samtykker/spærringer til Min Spærring databasen.

Ved valg af platform til denne service skal dataansvar og passende backup/replikering sikres.

Oprettelse/konfiguration af databaser og tabeller

Følgende databasekomponenterne er tilknyttet servicen:

  • consent: skema der indeholder Min Spærring registreringer.
  • whitelist: Whitelist der indeholder godkendte CVR-numre, som skal have adgang til servicen.

Alle CVR-numre i databasen, der skal gælde for Min Spærring administrationsservicen, skal have ’service key’ sat til ’dk.nsi.consent.administration’.

Alle CVR-numre der skal gælde for Min Spærring verifikationsservicen, skal have ’service key’ sat til ’dk.nsi.consent.verification’.

Docker Compose

MinSpørring leveres samtidig som et sæt af Docker Compose filer i folderen https://svn.nspop.dk/svn/components/minspaerring/trunk/compose.

For release x.y.z af MinSpærring findes Docker Compose filerne i folderen https://svn.nspop.dk/svn/components/minspaerring/tags/release-x.y.z/compose

En leverance af MinSpærring består af en compose folder som beskrevet ovenfor samt tilhørende tags af de fem Docker images.

Compose folderen indeholder 5 underfoldere:

Folder

Indhold

configurationHer ligger alle de konfigurationsfiler som det forventes af driften tilretter til det anvendte miljø. Se Driftvejledningen
databaseHer ligger alle de databasefiler som det forventes at driften lægger på en NSP database
developmentHer ligger en Docker Compose fil til brug for udvikling. Se Guide til Udviklere.
testHer ligger en Docker Compose fil der kan starte NAS2 i en standalone test konfiguration.
releaseHer ligger der to Docker Compose filer som det forventes driften anvender på både test og produktionsmiljøerne. 

Konfiguration af komponenterne

Al konfiguration foregår ved redigering af de relevante properties filer i deres modul folder under WildFly modules. Ved konfigurationsændringer bør containeren genstartes.

Indholdet af de enkelte konfigurationsfiler, er beskrevet og forklaret i [Driftsvejledning].

Konfigurationsfiler til Min Spærring administration refererer kodemodulet ConsentAdministration. Til verifikation refereres ConsentVerification.

Følgende filer kan tilpasses:

ConsentAdministration.properties

Konfigurerer opsætning af administrationsservicen og hvorledes den benytter sig af eksterne services.

En skabelon af denne fil findes i:

compose/configuration/administration/ConsentAdministration.properties

Filen redigeres inden den placeres på WildFly i:

/pack/wildfly8/modules/nsi/consentadministration/config/main/

Yderligere information kan findes i driftsvejledningen.

log4j-administration.xml

Konfigurerer logopsætningen for administrationsservicen.

En skabelon for log4j konfiguration findes i:

compose/configuration/administration/log4j-administration.xml

Filen redigeres inden den placeres på WildFly i:

/pack/wildfly8/modules/nsi/consentadministration/config/main/

Konfiguration af NSP SLA log for ConsentAdministration

NSP-util anvendes som en del af servicen og skal konfigureres. Eksempel på konfiguration fil findes i

compose/configuration/administration/log4j-nspslalog-consentadministration.properties
compose/configuration/administration/nspslalog-consentadministration.properties

Filerne redigeres inden den placeres på WildFly i:

/pack/wildfly8/modules/nsi/consentadministration/config/main/

Yderligere information kan findes i driftsvejledningen.

ConsentVerification.properties

Konfigurerer opsætning af verifikationsservicen.

En skabelon af denne fil findes i:

compose/configuration/verification/ConsentVerification.properties

Filen redigeres inden den placeres på WildFly i:

/pack/wildfly8/modules/nsi/consentverification/config/main/

Yderligere information kan findes i driftsvejledningen.

Consentverification.log4j.properties

Konfigurerer logopsætningen for verifikationsservicen.

En skabelon for log4j konfiguration findes i:

compose/configuration/verification/log4j-verification.xml 

Filen redigeres inden den placeres på WildFly i:

/pack/wildfly8/modules/nsi/consentverification/config/main/

Konfiguration af NSP SLA log for ConsentVerification

NSP-util anvendes som en del af servicen og skal konfigureres. Eksempel på konfiguration fil findes i

compose/configuration/verification/log4j-nspslalog-consentverification.properties
compose/configuration/verification/nspslalog-consentverification.properties	

Filerne redigeres inden den placeres på WildFly i:

/pack/wildfly8/modules/nsi/consentverification/config/main/

Yderligere information kan findes i driftsvejledningen.

Konfiguration af DKS

Konfigurationsfiler til de svar, Min Spærring Services returnerer ved forespørgsel mod de respektive DKS-snitflader kan opsættes ved at kopierere:

compose/configuration/verification/dksConfiguration.xml

til:

/pack/wildfly8/modules/nsi/consentadministration/config/main

Tilsvarende kopieres:

compose/configuration/verification/dksConfiguration.xml

til:

/pack/wildfly8/modules/nsi/consentverification/config/main

Start/genstart af service

Komponenten genstartes ved at genstarte den docker container som den kører i.

Logfiler

De to Min Spærring services kan logge kald til følgende logs: En NSP-SLA-log, en performance-log, en audit-log og en debug/error-log.

nsputil-sla-consentadministration.log
consentadministration-performance.log
consentadministration-audit.log
consentadministration.log

nsputil-sla-consentverification.log
consentverification-performance.log
consentverification-audit.log
consentverification.log

Det er muligt at konfigurere placeringen af filerne, samt hvilket niveau de logger på, ved at redigere i log4j-administration.xml og log4j-verification.xml.

Alle logs er beskrevet i driftsvejledningen.

Opgradering af komponenter

Når der kommer opgraderinger til en komponent, vil der medfølge releasenotes, der beskriver opgradering, fallback, osv. for den enkelte komponent.

Whitelisting af anvendere

Adgang til de to Min Spærring services styres på CVR niveau via konfiguration i databasen. Følgende beskrivelse tager udgangspunkt i, at whitelistning sker i tabellen whitelist.whitelist_config, oprettet som beskrevet i afsnit 3.5.

Test note:

I testkonfiguration kan whitelist databasen opdateres med SQL insert.

For Min Spærring verifikationsservice:

INSERT INTO whitelist.whitelist_config ( service_key, service_type, cvr ) VALUES ( 'dk.nsi.consent.verification', '', 'some-cvr-number-here' );

For Min Spærring administrationsservice:

INSERT INTO whitelist.whitelist_config ( service_key, service_type, cvr ) VALUES ( 'dk.nsi.consent.administration', '', 'some-cvr-number-here' );

Ved whitelistning til brug af Min Spærring administrationsservicen skal der, på grund af genanvendelse af ID-kort beskrevet i afsnit 4.3.2, tillige whitelistes til brug af Minlog Registreringsservicen.

Afinstallation af servicen

Stop de respektive docker containere og slet dem.


Oprydning i MySQL database for ConsentAdministration

Whiteliste:
DELETE FROM whitelist.whitelist_config 
 WHERE service = ‘dk.nsi.consent.administration'

consent (drop schema, if not used by other services)

Oprydning i MySQL database for ConsentVerification

Whiteliste:
DELETE FROM whitelist.whitelist_config 
 WHERE service = ‘dk.nsi.consent.verification'

consent (drop schema, if not used by other services)


Fjern eventuelt logfiler – se afsnit 4.5.



  • No labels