Page History
...
Samtykkeservicen administration er en central service, der opbevarer borgeres registrerede samtykker/spærringer frabedelser i consent databasen.
Der skal sikres at borgernes opdateringer af registrerede samtykker/spærringer frabedelser i den centrale consent database replikeres til den enkelte NSP.
...
Property | Beskrivelse |
|---|---|
idcard.version | Servicen afviser kald, hvor ID-kort i Security-header ikke har versionsnummer opgivet som værdien af denne property. Angives til 1.0.1 |
sts.test.mode | Angiver med værdien true at servicen benytter test-STS. Værdien skal være ’false’ i drift, hvorved den rigtige SOSI-STS anvendes. |
log.config.file | Angiver placering af log4j properties |
databasecheck.statement.consent | Se databasemonitorering beskrevet i afsnit 4.3.1.2. |
databasecheck.statement.what | |
databasecheck.statement.who | |
whitelistds.statement | |
servicestatuscheck.database.failurethreshold | Antal kald til lokal database der må fejle før der meldes 500 på statussnitfladen |
wsdl.app.endpoint | Det endpoint, hvor servicen bor. Dette anvendes af wsdl servlet til at returnere en korrekt service location. |
dk.nsi.consent.valid.from.allowed.skew.seconds | Angiver i sekunder, hvor langt tilbage i tide validFrom-tidsstemplet må ligge i forhold til 'nu'. |
| nas.notification.endpoint | Angiver det endpoint, som Cprindlæseren skal kalde NAS notification service på. |
| nas.topic | Angiver det Topic, som skal anvendes, når der sendes notifications til NAS. |
| client.minlog.properties | Angiver placering af properties til kald af MinLog2 |
| default.creating.system.name | I IDWS tilfældet er det dette navn der bliver brugt på spærringerne som oprettene system. |
| dk.nsp.minspaerring.administration.national.rolle | Den nationale rolle, der er krævet for at en sundhedsfaglig kan administrativ medarbejder kan anvende admin-snitfladen |
| dk.nsp.minspaerring.administration.rediger.minlog.tekst | Den tekst, der skrives i minlog, når en sundhedsfaglig administrativ medarbejder redigerer en spærring frabedelse på vegne af en ikke digital borger |
| dk.nsp.minspaerring.administration.tilfoj.minlog.tekst | Den tekst, der skrives i minlog, når en sundhedsfaglig administrativ medarbejder tilføjer en spærring frabedelse på vegne af en ikke digital borger |
| dk.nsp.minspaerring.administration.ophaev.minlog.tekst | Den tekst, der skrives i minlog, når en sundhedsfaglig administrativ medarbejder ophæver en spærring frabedelse på vegne af en ikke digital borger |
| dk.nsp.minspaerring.administration.hent.minlog.tekst | Den tekst, der skrives i minlog, når en sundhedsfaglig administrativ medarbejder indhenter oplysninger om spærringer på vegne af en ikke digital borger |
I den properties-fil, der udpeges af propertien ”client.minlog.properties”, skal følgende properties defineres:
| citizen.powerofattorney.privileges | Fuldmagts-streng for borger |
| citizen.powerofattorney.enabled | Angiver om muligheden med fuldmagt for borger er enabled. Default er false, dvs den ikke er. |
I den properties-fil, der udpeges af propertien ”client.minlog.properties”, skal følgende properties defineres:
registration.log.organisation_name | Angiver standard organisationsnavnet, der bliver sendt til MinLog Registreringsservicen. |
| kafka.producer.bootstrap.servers | Kafka endpoint, som anvendes i forbindelse med kald til MinLog2 |
| kafka.producer.client.id | Navnet som Samtykkeservicen vil fremgå med i listen af Producers på et Kafka Cluster. |
| kafka.producer.key.serializer | Serializer key for Kafka producer |
| kafka.producer.key.value.serializer | Serializer value for Kafka producer |
| kafka.topic | Kafka topic som anvendes i forbindelse med kald til MinLog2 |
...
dk.nsi.app.name | Navn på system til SLA-logning. |
dk.nsi.app.shortName | Kort navn på system til SLA-logning. |
dk.nsi.consent.sor.service.url | SORES endpoint. |
dk.nsi.consent.validate.healthcare.professional.cpr | Flag der angiver om cpr-nummer på sundhedsfaglige personer sundhedsfaglig medarbejder skal valideres ved kald til SAES, når der oprettes eller ændres spærringer. |
dk.nsi.consent.validate.organization | Flag der angiver om organisationsnumre (SOR-, SHAK- og ydernummer) skal valideres ved kald til SORES og SYES, når der oprettes eller ændres spærringer. |
dk.nsi.consent.sor.fail.threshold | Grænse for hvor mange gange SORES-kald må fejle i træk, før SORES opfattes som usund. |
dk.nsi.consent.sor.max.total.connections | Maksimalt antal samtidige SORES-forbindelser. |
dk.nsi.consent.sor.default.max.connections.per.route | Maksimalt antal SORES-forbindelser per rute. |
dk.nsi.consent.saes.fail.threshold | Grænse for hvor mange gange SAES-kald må fejle i træk, før SAES opfattes som usund. |
dk.nsi.consent.saes.connect.timeout.millis | Grænse for hvor tid det må tage at oprette forbindelse til SAES (i ms.). |
dk.nsi.consent.saes.read.timeout.millis | Grænse for hvor tid det må tage at modtage svar fra SAES (i ms.). |
dk.nsi.consent.saes.service.url | SAES endpoint. |
dk.nsi.consent.syes.fail.threshold | Grænse for hvor mange gange SYES-kald må fejle i træk, før SYES opfattes som usund. |
dk.nsi.consent.syes.connect.timeout.millis | Grænse for hvor tid det må tage at oprette forbindelse til SYES (i ms.). |
dk.nsi.consent.syes.read.timeout.millis | Grænse for hvor tid det må tage at modtage svar fra SYES (i ms.). |
dk.nsi.consent.syes.service.url | SYES endpoint. |
...
| Code Block |
|---|
idcard.version = 1.0.1 sts.test.mode = false log.config.file=consentadministration.log4j.properties client.minlog.properties = ConsentAdministration.properties registration.wsdl.location = http://localhost:8080/minlog-registration/service?wsdl registration.invoker.timeout = 30000 registration.log.organisation_name=(organisationsnavn blev ikke udfyldt på registreringstidspunktet) databasecheck.statement.consent=SELECT * FROM consent.consentitem LIMIT 1; databasecheck.statement.what=SELECT * FROM consent.whatitem LIMIT 1; databasecheck.statement.who=SELECT * FROM consent.whoitem LIMIT 1; whitelistds.statement=SELECT * FROM whitelist.whitelist_config LIMIT 1; servicestatuscheck.database.failurethreshold = 1 idcardwsdl.subjectapp.id.typeendpoint = medcom:cvrnumber idcard.http://localhost:8080/consent-verification/ idcard.subject.id.type = medcom:cvrnumber idcard.subject.id = 46837428 idcard.subject.name = NETS DANID A/S - TU VOCES gyldig idcard.level = 3 idcard.system.name = Samtykkeservicen sts.endpoint = http://test1-cnsp.ekstern-test.nspop.dk:8080/sts/services/SecurityTokenService sts.keystore = Statens_Serum_Institut_VOCES.jks sts.keystore.password = Test1234 # Kafka kafka.producer.bootstrap.servers=kafka:9092 kafka.producer.client.id=MinSpaerringMinLog2-producer kafka.producer.key.serializer=org.apache.kafka.common.serialization.StringSerializer kafka.producer.value.serializer=org.apache.kafka.common.serialization.StringSerializer kafka.topic=MIT_TOPIC # Ikke digitale dk.nsp.minspaerring.administration.national.rolle=urn:dk:healthcare:national-federation-role:code:41001:value:SundAssistR1 dk.nsp.minspaerring.administration.rediger.minlog.tekst=SundhedspersonAdministrativ medarbejder har redigeret spærringerfrabedelser på forvegne enaf borger dk.nsp.minspaerring.administration.tilfoj.minlog.tekst=SundhedspersonAdministrativ medarbejder har tilføjet spærringerfrabedelser på forvegne enaf borger dk.nsp.minspaerring.administration.ophaev.minlog.tekst=SundhedspersonAdministrativ medarbejder har ophævet spærringerfrabedelse på forvegne enaf borger dk.nsp.minspaerring.administration.hent.minlog.tekst=SundhedspersonAdm. medarbejder har indhentet oplysninger om spærringer for en borgerborgers frabedelser |
log4j konfiguration
Log4j konfiguration findes i (hvis ovenstående format anvendes) consentadministration.log4j.properties filen.
...
Property | Beskrivelse |
|---|---|
idcard.version | Servicen afviser kald, hvor ID-kort i Security-header ikke har versionsnummer opgivet som værdien af denne property. Angives til 1.0.1 |
sts.test.mode | Angiver med værdien true at servicen benytter test-STS. Værdien skal være ’false’ i drift, hvorved den rigtige SOSI-STS anvendes. |
log.config.file | Angiver placering af log4j properties. |
databasecheck.statement.consent | Se databasemonitorering beskrevet i afsnit 4.3.1.2. |
databasecheck.statement.what | |
databasecheck.statement.who | |
whitelistds.statement | |
servicestatuscheck.database.failurethreshold | Antal kald til lokal database der må fejle før der meldes 500 på statussnitfladen |
dk.nsiwsdl.app.endpoint | Det endpoint, hvor servicen bor. Dette anvendes af wsdl servlet til at returnere en korrekt service location. |
dk.nsi.app.name | Navn på system til SLA-logning. |
dk.nsi.app.shortName | Kort navn på system til SLA-logning. |
dk.nsi.consent.sor.service.url | SORES endpoint. |
dk.nsi.consent.sor.fail.threshold | Grænse for hvor mange gange SORES-kald må fejle i træk, før SORES opfattes som usund. |
dk.nsi.consent.sor.max.total.connections | Maksimalt antal samtidige SORES-forbindelser. |
dk.nsi.consent.sor.default.max.connections.per.route | Maksimalt antal SORES-forbindelser per rute. |
...
| Code Block |
|---|
idcard.version = 1.0.1
sts.test.mode = false
log.config.file=consentverification.log4j.properties
databasecheck.statement.consent=SELECT * FROM consent.consentitem LIMIT 1;
databasecheck.statement.what=SELECT * FROM consent.whatitem LIMIT 1;
databasecheck.statement.who=SELECT * FROM consent.whoitem LIMIT 1;
whitelistds.statement=SELECT * FROM whitelist.whitelist_config LIMIT 1;
servicestatuscheck.database.failurethreshold = 1
wsdl.app.endpoint=http://localhost:8081/consent-administration/ |
Log4j konfiguration
Log4j konfiguration findes i (hvis ovenstående format anvendes) consentverification.log4j.properties filen.
...
Resultatet af de udførte tjek bliver også skrevet til en af filerne consentadministration-status.log og consentverification-status.log. Såfremt der ikke er nogle fejlbeskeder i loggen bør property-filen undersøges som det første, da det er herigennem logindstillingerne bestemmeslogindstillingerne bestemmes.
nsp-role-mapping.properties
DDS Registry og Repository anvender denne property fil til at mappe hvilken rolle (role), der kommer ned i minlog registreringen.
Property filen vedligeholdes her: https://git.nspop.dk/projects/TOOL/repos/nsp-role-mapping/browse/nsp-role-mapping.properties
| citizen.user | Bestemmer hvilken rolle står beskrevet i minlog ved kald til DDS for borger Eksempel på værdi: Borger |
| healthcareprofessional.unknown.user | Bestemmer hvilken rolle står beskrevet i minlog ved kald til DDS for sundhedfaglig, hvor der ikke kunne bestemmes en rolle. Eksempel på værdi: Unverified role |
| childcustodyholder.user | Bestemmer hvilken rolle står beskrevet i minlog ved kald til DDS for borger med forældremyndighed Eksempel på værdi:Forældremyndighed |
| proxyholder.user | Bestemmer hvilken rolle står beskrevet i minlog ved kald til DDS for borger med fuldmagt Eksempel på værdi: Fuldmagt |
<Uddannelseskoder> | Der angives en række uddannelseskoder med kode=læsbar tekst Eksempler er: C511=Ambulancebehandler Når der logges til minlog, og rollen er en uddannelseskode, laves der mapning mellem kode og læsbar tekst. Findes koden ikke som mapning anvendes den oprindelige kode. |
| <Nationale Roller (NSP)> | Der angives en række nationale roller med rolle=læsbar tekst Eksempler er: urn:dk:healthcare:national-federation-role:code:41001:value:SundAssistR1=Sundhedsstamkort-Læser Når der logges til minlog, og rollen er en national rolle, laves der mapning mellem rolle og læsbar tekst. Findes rollen ikke som mapning anvendes den oprindelige rolle. |
Overvågning
Samtykkeservicen verifikations- og administrationsservices overvåges af en servicespecifik statussnitflade. Disse snitfladers url’er kan aflæses i afsnit 2.
...
ConsentForUserCheck
ConsentForDataCheckConsentForForeignersCheck
Auditlogning is done using the official NSP Audit Log modul.
De forskellige håndtag logges på følgende måde.
Samtykkeservicen verificering Audit data
| Komponent | Kontekst | Type | Nøgle | Information |
|---|---|---|---|---|
| consent | ConsentForUserCheck | Personlige | virksomhed-id | Identifikation af brugerens organisation |
| virksomhed-id-type | Typen på identifikationen af brugerens organisation | |||
| Ikke personlige | CVR | CVR på brugerens organisation | ||
| FlowId | Identifikation af aktuelt flow | |||
| Følsomme | patient-cpr | CPR nummer på patient om hvem samtykke unsersøges | ||
| bruger-cpr | CPR nummer på brugeren der kalder services | |||
| on-behalf-of-cpr | CPR nummer på sundhedsfaglig medarbejder servicen kaldes på vegne af | |||
| samtykke-indikator | Værdien af samtykke check; POSITIVE, NEGATIVE eller DATA_SPECIFIC_CONSENT | |||
| ConsentForDataCheck | Personlige | virksomhed-id | Identifikation af brugerens organisation | |
| virksomhed-id-type | Typen på identifikationen af brugerens organisation | |||
| Ikke personlige | queryDataRegistration.[0..n].id | Data hvor der skal checkes for data specifikt samtykke. Der kan forespørges på flere data typer ad gangem, så nøglen har en fortløbende værdi indlejret. | ||
| queryDataRegistration.[0..n].virksomhed-id | ||||
| queryDataRegistration.[0..n].virksomhed-id-type | ||||
| queryDataRegistration.[0..n].oprettet-dato-tid | ||||
| CVR | CVR på brugerens organisation | |||
| FlowId | Identifikation af aktuelt flow | |||
| Følsomme | patient-cpr | CPR nummer på patient om hvem samtykke unsersøges | ||
| bruger-cpr | CPR nummer på brugeren der kalder services | |||
| on-behalf-of-cpr | CPR nummer på sundhedsfaglig medarbejder servicen kaldes på vegne af | |||
| positiv-samtykke-id-liste | En liste af identer på data typer, som har positivt samtykke. | ConsentForForeignersCheck | Personlige | |
| Ikke personlige | CVR | CVR på brugerens organisation | ||
| FlowId | Identifikation af aktuelt flow | |||
| Følsomme | patient-cpr | CPR nummer på patient om hvem samtykke unsersøges | ||
| bruger-cpr | CPR nummer på brugeren der kalder services | |||
| samtykke-til-udenlandsk-sundhedsperson | Værdien af check for samtykke til udenlandsk sundhedsperson; POSITIVE eller NEGATIVE |
Type mapning mellem ovenstående tabel og faktisk data i fil: Personlig = RegularPersonalInformation/RPI, Ikke personlig = NonPersonalInformation/NPI og Følsomme = SensitivePersonalInformation/SPI
...