Page History
| Navitabs | ||||
|---|---|---|---|---|
| ||||
Indhold
| Table of Contents |
|---|
Komponenter
Dette dokument dækker følgende komponenter på NSP:
...
Type: SOAP Webservice
Filnavn: idsas-registration.war
Url: <serverurl>/idsas-registration
Status-url: <serverurl>/idsas-registration/status
- DKS-config: <serverurl>/idsas-registration/dksconfig
Type: SOAP Webservice
Filnavn: idsas-lookup.war
Url: <serverurl>/idsas-lookup
Status-url: <serverurl>/idsas-lookup/status
- DKS-config: <serverurl>/idsas-lookup/dksconfig
Type: SOAP Webservice
Filnavn: idsas-salt.war
Url: <serverurl>/idsas-salt
Status-url: <serverurl>/idsas-salt/status
- DKS-config: <serverurl>/idsas-salt/dksconfig
- Type: Webservlet
- Filnavn: idsas-operations.war
- Url: <serverurl>/idsas-operations
Status-url: <serverurl>/idsas-operations/status
Version-url: <serverurl>/idsas-operations/version
Konfiguration
Servicekonfiguration
Grundlæggende konfiguration foregår ved redigering i filerne idsas-registration.properties, idsas-lookup.properties, idsas-salt.properties og idsas-operations.properties. I alle tilfælde skal de placeres i følgende WildFly modul:
...
Property | Beskrivelse | Påkrævet | Default værdi |
|---|---|---|---|
| idsas.patient.id.salt | Salt til hashing af patientId'ere. Se afsnittet længere nede. | Ja |
log4j konfiguration
Log4j konfiguration for begge services findes i samme wildfly modul som servicekonfigurationen
Se yderligere opsætning i installationsvejledningen.
Salt til hashing af patientId'ere
Til hashing af patientId'ere i databasen, anvendes den salt som er angivet i property konfigurations-filen "idsas.-patient.-id-salt.saltproperties". Salten angives som en base64-encoded tekststreng. to tekststrenge; en prefix og en postfix.
Det er vigtigt, at denne salt er stabil og aldrig ændrer sig, efter at den er blevet valgt.
...
Der er ingen særlige krav til salten, ud over at den er stabil.
Man kan fx bruge openssl til at genererer en saltefterfølgende slå patientId'er op i tabellen med følgende SQL, som genererer hash-værdien på samme måde som Java-koden i servicen:
| Code Block | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| |||||||||
select sha2(concat('saltprefix', '1111111118', 'saltpostfix'), 256);openssl rand -base64 16 |
Overvågning
Alle IDSAS services udstiller en overvågningsside, som findes i listen af komponenter.
Fortolkning af overvågningsside
Overvågningssiderne returnerer enten:
- HTTP 200, hvis servicen i øjeblikket kører fint.
- HTTP 503, hvis der er opstået en fejl der kræver indgriben.
Audit-logning
Hvert servicekald medfører en ny indgang i auditloggen, som kan være udfyldt med følgende komponenter, afhængig af konteksten:
...
| Code Block | ||||||
|---|---|---|---|---|---|---|
| ||||||
{
"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
}
}
} |
Whitelisting af anvendere
De enkelte anvenderes ID skal whitelistes til at bruge IDSAS. Et ID kan enten være et CVR eller navnet på et system, alt efter hvad der whitelistes til.
...
Note-feltet kan fx anvendes til at referere en supportsag eller lignende for sporingshensyn. Kun actor_id og type er obligatorisk.
Baggrundsjobs
Oprettelse/fornyelse af salt
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, når der er behov.
Oprydningsjob
Oprydningsjobbet startes via et HTTP GET kald til <serverurl>/idsas-operations/cleanup-blurrings
...