Page History
| Navitabs | ||||
|---|---|---|---|---|
| ||||
Table of Contents
Komponenter
Dette dokument dækker følgende komponenter på NSP:
Dokumentregistrerings- og oprettelsesservice
Type: Webservice
Filnavn: sfsk.war
Url: <serverurl>/sfsk
Servicecheckurl: <serverurl>/sfsk/status
Versionurl: <serverurl>/sfsk/health returnerer en json struktur med denne
Konfiguration
Servicekonfiguration
Grundlæggende konfiguration foregår ved redigering i filen sfsk.properties, der placeres i følgende WildFly modul:
...
Property | Beskrivelse |
SFSK property | |
sfsk.url.prefix | URL prefix der indsættes i wsdl'er og bruges af dks-servlet. |
sfsk.app.name | Anvendes af dks-servlet |
iti18.service.endpoint | Endpoint på ITI18-backend. |
iti43.service.endpoint | Endpoint på ITI42-backend. |
sfsk.backend.failure.threshold | Tærskel for, hvor mange gang i træk et kald til en backend må fejle, før denne backend betragtes som 'død' af status-siden. |
sfsk.dgws.keystore.resource | Keystore, der indeholder funktionscertifikat. |
sfsk.dgws.keystore.password | Password til sfsk.dgws.keystore.resource. |
sfsk.dgws.keystore.alias | Alias til sfsk.dgws.keystore.resource. |
sfsk.dgws.sts.request.url | Endpoint til STS token service. |
sfsk.dgws.cvr | Cvr som SFSK's DGWS skal benytte sig af. |
sfsk.dgws.org | Organisations navn som SFSK's DGWS skal benytte sig af. |
sfsk.datasource.jndi | Datasource der skal bruges til forbindelsen til databasen . |
sts.endpoint | Endpoint til STS token service. Benyttes af integrationerne. |
sfsk.idws.audience | Denne værdi angiver, hvad audience-attributten i SecurityContext ved et IDWS-kald skal være lig med. Standardværdien er https://fmk |
SAES property | |
| saes.endpoint | Endpoint til SAES service. |
| saes.connect.timeout.millis | Maksimale antal millisekunder servicen skal foretage poll inden den timer ud. |
| saes.read.timeout.millis | Maksimale antal millisekunder Kafka consumeren venter hvis der kommer flere kald ind end der er Followup objekter i pool'en. |
| saes.sts.keystore | Keystore, der indeholder funktionscertifikat. |
| saes.sts.keystore.password | Password til sfsk.dgws.keystore.resource. |
| saes.sts.keystore.alias | Alias til sfsk.dgws.keystore.resource. |
| saes.idcard.subject.name | Organisations navn som SAES's DGWS skal benytte sig af. |
| saes.idcard.subject.id | Cvr som SAES's DGWS skal benytte sig af. |
| saes.idcard.system.name | Anvendes af dks-servlet. |
BRS property | |
| brs.endpoint | Endpoint til BRS service. |
| brs.connect.timeout.millis | Maksimale antal millisekunder servicen skal foretage poll inden den timer ud. |
| brs.read.timeout.millis | Maksimale antal millisekunder Kafka consumeren venter hvis der kommer flere kald ind end der er Followup objekter i pool'en. |
| brs.sts.keystore | Keystore, der indeholder funktionscertifikat. |
| brs.sts.keystore.password | Password til sfsk.dgws.keystore.resource. |
| brs.sts.keystore.alias | Alias til sfsk.dgws.keystore.resource. |
| brs.idcard.subject.name | Organisations navn som SAES's DGWS skal benytte sig af. |
| brs.idcard.subject.id | Cvr som SAES's DGWS skal benytte sig af. |
| brs.idcard.system.name | Anvendes af dks-servlet. |
| treatment.relation.serviceprovider.vendor | Indsættes som ’ServiceProvider/Vendor’ i behandlingsrelationsservicens treatmentRelationRequestBody. |
| treatment.relation.serviceprovider.version | Indsættes som ’ServiceProvider/Version’ i behandlingsrelationsservicens treatmentRelationRequestBody. |
| treatment.relation.external.reference.id | Indsættes som ’ExternalReferenceId’ i behandlingsrelationsservicens treatmentRelationRequestBody. |
| treatment.relation.timelimit.offset | Angiver antallet af dage fra SFSK-kaldtidspunktet, der skal indsættes som tidsstemplet ’TimeLimit’ i behandlingsrelationsservicens treatmentRelationRequestBody. |
| treatment.relation.lookup.timeinterval.start.offset | Angiver antallet af dage fra SFSK-kaldtidspunktet, der skal indsættes som tidsstemplet ’RelationLookupTimeInterval/start’ i behandlingsrelationsservicens treatmentRelationRequestBody. Negativt fortegn angiver antal dage før kaldtidspunktet. |
| treatment.relation.lookup.timeinterval.end.offset | Angiver antallet af dage fra SFSK-kaldtidspunktet, der skal indsættes som tidsstemplet ’RelationLookupTimeInterval/end’ i behandlingsrelationsservicens treatmentRelationRequestBody. Negativt fortegn angiver antal dage før kaldtidspunktet. |
| treatment.relation.acceptable.relations | Kommasepareret liste af kategorier, der indsættes som ’AcceptableRelations/Relation’ i behandlingsrelationsservicens treatmentRelationRequestBody, når sundhedspersonens organisation. |
| treatment.relation.followup.relations | Kommasepareret liste af kategorier, der indsættes som ’FollowupRelations/Relation’ i behandlingsrelationsservicens treatmentRelationRequestBody, Kommasepareret liste af kategorier. |
Nationale roller property | |
| dk.nsp.sfsk.nationale.roller | Nationale roller for medarbejderopslag |
MinLog property | |
| minlog.query.childcustodyholder | MinLog activity text forældremyndighedsindehaver |
| minlog.query.proxyholder | MinLog activity text fuldmagtshaver |
| minlog.query.default | MinLog activity text ingen relation er angivet |
minlog.citizen.user.title | Værdi af Role, som sendes til Minlog, hvis brugertypen er Borger. |
minlog.healthcareprofessional.unknown.user.title | Værdi af Role, som sendes til Minlog, hvis brugertypen er Sundhedsfaglig og Role ikke kan bestemmes vha. uddannelseskode eller national rolle. |
log4j konfiguration
Log4j konfiguration findes i samme wildfly modul som servicekonfigurationen
Se yderligere opsætning i installationsvejledningen.
Log
Auditlog
Her logges forespørgsler til servicen.
...
| Code Block | ||||
|---|---|---|---|---|
| ||||
{
"time": "2021-07-01T07:33:11.443Z",
"category": "dk.sds.nsp.audit.log.sfsk",
"audit": {
"timestamp": "2021-07-01T09:33:10.007+02:00",
"components": [
{
"component": "SFSK",
"contexts": [
{
"context": "DocumentRepository_RetrieveDocumentSet",
"information": [
{
"key": "værdispring",
"type": "RPI",
"value": "false"
},
{
"key": "document_entry.0.homecommunityid",
"type": "RPI",
"value": ""
},
{
"key": "document_entry.0.repositoryid",
"type": "RPI",
"value": "1.1.1"
},
{
"key": "document_entry.0.documentid",
"type": "RPI",
"value": "1.2.208.176.43210.8.10.12^91a2307e-f948-4c71-aa69-d72c5e41dac9"
}
]
}
]
}
]
},
"access": {
"code": 200,
"duration": 1017,
"httpHeaders": {
"Content-Type": "multipart/related; type=\"application/xop+xml\"; boundary=\"uuid:ce184aa9-46e0-4dd5-b4d4-3906cc232ed3\"; start=\"<root.message@cxf.apache.org>\"; start-info=\"application/soap+xml\""
},
"httpHost": "localhost",
"idCardAttributes": {
"medcom:CareProviderID": "33257872",
"medcom:CareProviderName": "Sundhedsdatastyrelsen",
"medcom:ITSystemName": "SFSK",
"sosi:AuthenticationLevel": "3",
"sosi:IDCardID": "F5qM/3t3mok2gDB/GAY1Fw==",
"sosi:IDCardType": "system",
"sosi:IDCardVersion": "1.0.1"
},
"method": "POST",
"path": "/sfsk/iti43",
"query": "",
"port": 8060,
"protocol": "http",
"reqSize": 7191,
"resSize": 7940,
"soapHeaders": {
"Issuer": "TEST2-NSP-STS",
"MessageID": "AAABemD8XsT8P8AKfoFPvVNPU0k=",
"NameID": "SubjectDN={SERIALNUMBER=CVR:33257872-FID:28250866 + CN=SFSK (funktionscertifikat), O=Sundhedsdatastyrelsen // CVR:33257872, C=DK},IssuerDN={CN=TRUST2408 Systemtest XXXIV CA, O=TRUST2408, C=DK},CertSerial={1604117906}",
"w3Action": "urn:ihe:iti:2007:RetrieveDocumentSet",
"w3MessageID": "urn:uuid:ad9bc9e1-dced-4ae9-8065-a6d56631cdff",
"w3To": "http://localhost:8060/sfsk/iti43"
},
"threadId": "default task-1",
"time": "2021-07-01T09:33:10.007+02:00",
"stats": {
"handlerDuration": 390,
"RequestContentDuration": 161,
"ResponseContentDuration": 0,
"SecurityProtocolRequestDuration": 184,
"SecurityProtocolResponseDuration": 0,
"bufferAllocated": false,
"usedBuffers": 1,
"activeBuffersInPool": 1,
"idleBuffersInPool": 1
}
}
} |
Whitelisting af anvendere
De enkelte anvendere skal whitelistes til at bruge SFSK. Der findes en tabel whitelist til dette formål. Det er anvenders certifikat, der whitelistes.
...
| Code Block | ||
|---|---|---|
| ||
INSERT INTO whitelist (subjectserialnumber, note) VALUES ('CVR:46837428-UID:27910135', 'Oprettet fra supportsag ASCP00155779'); |
Overvågning
SFSK udstiller en overvågningsside, som findes i listen af komponenter i afsnit 2.
5.1. Fortolkning af HTML overvågningsside
DROS-overvågningssiden returnerer enten:
- HTTP 200, hvis servicen i øjeblikket kører fint.
- HTTP 500, hvis der er opstået en fejl der kræver indgriben.
5.2. Overvågningstyper
Det overvåges for hver backend, om kaldene til backenden går galt. Det kan konfigureres, hvor mange kald i træk der må gå galt, før en backend betragtes som 'død'.
Eksempler på status-sider
200 OK
200 OK
---------------------------------------
STATUS
ITI18 backend alive: true
ITI43 backend alive: true
Det fremgår for hver backend, om kaldene til den går godt eller ej.
500 Internal Server Error
500 Internal Server Error
---------------------------------------
STATUS
ITI18 backend alive: true
ITI54 backend alive: false
Hvis kaldene til backend ikke kan udføres, så returneres statuskode 500.
...