Dette dokument dækker følgende komponenter på NSP:
Identitetssløring af ansatte i sundhedsvæsenet (IDSAS)
Komponenten dækker tre web applikationer som følger
Type: SOAP Webservice
Filnavn: idsas.war
Url: <serverurl>/idsas
Status-url: <serverurl>/idsas/status
Version-url: <serverurl>/idsas/version
Type: SOAP Webservice
Filnavn: idsas-lookup.war
Url: <serverurl>/idsas-lookup
Status-url: <serverurl>/idsas-lookup/status
Version-url: <serverurl>/idsas-lookup/version
Status-url: <serverurl>/idsas-operations/status
Version-url: <serverurl>/idsas-operations/version
Grundlæggende konfiguration foregår ved redigering i filerne idsas.properties, idsas-lookup.properties og idsas-operations.properties. I alle tilfælde skal de placeres i følgende WildFly modul:
/pack/wildfly8/modules/dk/nsp/idsas/main/
Moduldefinitionerne for hver service findes i kildekoden under:
/idsas-war/etc/modules/dk/nsp/idsas/configuration/main/module.xml
I idsas.properties kan følgende properties defineres:
Property | Beskrivelse | Påkrævet | Default værdi |
|---|---|---|---|
| idsas.datasource.jndi | Navn på jboss datasource (defineret i idsas-ds.xml) | Ja | |
| personinformation.url | URL til PersonInformation servicen | Ja | |
| personinformation.errorcount.duration | Specificering af hvor lang tid tilbage der skal tælles fejl fra PersonInformation servicen (ifm /status endpointet). Angives som duration i ISO-8601 formattet. | Nej | PT10M (10 minutter) |
| personinformation.error.tolerance | Antal fejl der tolereres fra PersonInformation servicen før /status endpointet angiver servicen som ikke tilgængelig. | Nej | 0 |
| sores.url | URL til SORES | Ja | |
| sores.errorcount.duration | Specificering af hvor lang tid tilbage der skal tælles fejl fra SORES (ifm /status endpointet). Angives som duration i ISO-8601 formattet. | Nej | PT10M (10 minutter) |
| sores.error.tolerance | Antal fejl der tolereres fra SORES før /status endpointet angiver servicen som ikke tilgængelig. | Nej | 0 |
I idsas-lookup.properties kan følgende properties defineres:
Property | Beskrivelse | Påkrævet | Default værdi |
|---|---|---|---|
| idsas.datasource.jndi | Navn på jboss datasource (defineret i idsas-ds.xml) | Ja | |
| idsas.allowed.client.system.name | Navnet på det system som må kalde "getBlurredOrganisations" i "idsas-lookup". | Nej | http://system.nspop.dk/sts |
I idsas-operations.properties kan følgende properties defineres:
Property | Beskrivelse | Påkrævet | Default værdi |
|---|---|---|---|
| idsas.datasource.jndi | Navn på jboss datasource (defineret i idsas-ds.xml) | Ja |
Log4j konfiguration for begge services findes i samme wildfly modul som servicekonfigurationen
Se yderligere opsætning i installationsvejledningen.
Begge IDSAS services udstiller en overvågningsside, som findes i listen af komponenter.
Overvågningssiderne returnerer enten:
Hvert servicekald medfører en ny indgang i auditloggen, som kan være udfyldt med følgende komponenter, afhængig af konteksten:
Komponent | Kontekst | Type | Nøgle | Information |
|---|---|---|---|---|
| IDSAS | createBlurring | Personlig | cpr | CPR på borgeren |
| IDSAS | createBlurring | Ikke Personlig | cvr | CVR på organisationen |
| IDSAS | getCurrentSalt | Ikke Personlig | cvr | CVR på organisationen |
| IDSAS | getBlurredOrganisations | Personlig | cpr | CPR på borgeren |
{
"time": "2023-06-12T11:42:23.664Z",
"category": "dk.sds.nsp.audit.log.idsas",
"audit": {
"timestamp": "2023-06-12T13:42:22.972+02:00",
"components": [
{
"component": "IDSAS",
"contexts": [
{
"context": "createBlurring",
"information": [
{
"key": "cpr",
"type": "RPI",
"value": "1234567890"
},
{
"key": "cvr",
"type": "NPI",
"value": "33257872"
}
]
}
]
}
]
},
"access": {
"code": 200,
"duration": 95,
"httpHeaders": {
"Content-Type": "text/xml;charset=UTF-8",
"SOAPAction": "CreateBlurring"
},
"httpHost": "localhost",
"idCardAttributes": {
"medcom:CareProviderID": "33257872",
"medcom:CareProviderName": "Sundhedsdatastyrelsen",
"medcom:ITSystemName": "Service Consumer Test",
"medcom:UserAuthorizationCode": "6QF17",
"medcom:UserRole": "7170",
"sosi:AuthenticationLevel": "4",
"sosi:IDCardID": "SIjvZBkfZ1yAWSpYFcLpvw==",
"sosi:IDCardType": "user",
"sosi:IDCardVersion": "1.0.1"
},
"method": "POST",
"path": "/idsas/20230601/service",
"query": "",
"port": 8080,
"protocol": "http",
"reqSize": 7204,
"resSize": 211,
"soapHeaders": {
"FlowID": "72111931-fe3b-4956-bea3-20e8c5be9ce0",
"Issuer": "TEST1-NSP-STS",
"MessageID": "76315a15-0fb2-4df7-9e3e-53a3b28fb700",
"NameID": "urn:uuid:46559bb9-d720-48b7-b9bd-c280915768d0"
},
"threadId": "default task-1",
"time": "2023-06-12T13:42:22.968+02:00",
"stats": {
"handlerDuration": 583,
"RequestContentDuration": 41,
"ResponseContentDuration": 0,
"SecurityProtocolRequestDuration": 368,
"SecurityProtocolResponseDuration": 0,
"bufferAllocated": true,
"usedBuffers": 1,
"activeBuffersInPool": 1,
"idleBuffersInPool": 0
}
}
} |
De enkelte anvenderes CVR skal whitelistes til at bruge IDSAS.
Der er to typer af whitelisting; BLURRING og SALT.
Der findes en tabel whitelist i databasen til dette formål.
SQL til at indsætte whitelisting af CVR kan se ud på følgende måde:
|
Note-feltet kan fx anvendes til at referere en supportsag eller lignende for sporingshensyn. Kun cvr og type er obligatorisk.
Oprettelse/fornyelse af salt sker via et HTTP GET kald til <serverurl>/idsas-operations/renew-salt
Dette kald skal laves for at oprette det første salt, og efterfølgende for at forny saltet.