Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

FeltBeskrivelse
cvrEt cvr nummer der tillades adgang uden validering af nationale roller.
endpoint

Det endpoint hvortil funktionaliteten kan benyttes. Mulige værdier er

  • 'STS' (svarende til SecurityTokenService dvs DGWS) og
  • 'NBO' (svarende til OIOSaml2Sosi)
  • 'BST2SOSI' (svarende til omveksling af Bootstrap token til DGWS)

Af sikkerhedsmæssige årsager anbefales funktionaliteten pt kun benyttes for 'STS'.

roleValue

Den nationale rolle som er tilladt for CVR-nummeret. 'NULL' tillader alle roller.

Kun 'value'-delen af rolledefinitionen angives.

Konfiguration af medarbejderomvekslinger

STS indeholder en række omvekslingssnitflader til brug for brugere af typen medarbejder.

Trustmodellen og opsætningen for de enkelte snitflader er opsummeret i nedenstående tabel og uddybet i de underliggende afsnit:

Anchor
CvrWhitelistingValidation
CvrWhitelistingValidation
Opsætning: Whitelisting af CVR

Validering af CVR whitelisting kan slås til/fra vha konfigurationsparameteren: validateCvrWhitelisting. Værdien sættes til enten true eller false.

Når DGWS snitfladen kaldes med et MOCES certifikat, så valideres CVR nummeret mod de CVR numre der findes i tabellen sts_audconf.whitelistedUserIdCardCvr.

Hvis valideringen er slået til og cvr nummeret ikke findes i tabellen, så afvises kald med MOCES certifikater og der bliver ikke udstedt et ID-kort.

FeltBeskrivelse
cvrcvr nummer der giver adgang til omvekslingen hvis valideringen er slået til.
comment

Fritekst felt. Kan f.eks. indeholde beskrivelse af hvilken organisation cvr nummeret hører under.

Konfiguration af medarbejderomvekslinger

STS indeholder en række omvekslingssnitflader til brug for brugere af typen medarbejder.

Trustmodellen og opsætningen for de enkelte snitflader er opsummeret i nedenstående tabel og uddybet i de underliggende afsnit:

SnitfladeTrust og SnitfladeTrust og opsætning
Medarbejderomveksling
/sts/services/Sosi2OIOSaml
  • Det indkommende idkort skal være signeret af STS selv (udstedt af /NewSecurityTokenService)
  • Der skal være konfigureret et audience, der matcher det, som anvenderen angiver i requestet.
/sts/services/OIOSaml2Sosi
  • OIOSaml assertion skal være signeret af trusted part (i test-new-nemLogin-idp.keystore) - i praksis NemLog-In
/sts/services/BST2SOSI
  • Bootstrap token skal være signeret af trusted part (konfigureret i database tabellen sts_audconf.trustedIdpConfiguration). Lokal IdP, SEB eller NemLog-in

...

Dette konfigureres fælles for alle tre borgeromvekslinger på bean minimumAllowedAge der findes i services.xml:

PropertyBeskrivelse
minimumAllowedAge

Minimumsalder for en person der kan få udstedt en IDWS-billet. Hvis borgeren er yngre, så bliver forespørgslen afvist.

Fuldmagtsservice

Det er muligt at skifte imellem V1 og V2 af fuldmagtsservicen.

...

Code Block
languagetext
titleOutput fra checkstatus endpoint
collapsetrue
Version: 2.8.6-SNAPSHOT
Local time: Tue Jan 04 13:50:45 CET 2022
Started: Tue Jan 04 08:56:47 CET 2022
Last transaction: Tue Jan 04 08:58:23 CET 2022
Last issued: Tue Jan 04 08:58:23 CET 2022
Sts certificate, valid from: Tue Apr 30 11:07:17 CEST 2019
Sts certificate, valid until: Sat Apr 30 11:06:38 CEST 2022
Sts certificate valid: OK
Requests, 24h: 604
Requests, total: 604
Failed requests, 24h: 58
Failed requests, total: 58
Response time, avg 24h: 33 ms
Response time, max 24h: 888 ms
CRL, latest successful download: Tue Jan 04 08:55:51 CET 2022
CRL, latest failed download: never
CPR-RID, latest successful call: Tue Jan 04 08:58:00 CET 2022
CPR-RID, latest failed call: never
CPR-PID, latest successful call: Tue Jan 04 08:58:12 CET 2022
CPR-PID, latest failed call: never
Procuration, latest successful call: Tue Jan 04 08:57:53 CET 2022
Procuration, latest failed call: never
UUID2CPR, latest successful call: Mon May 16 13:25:58 CEST 2022
UUID2CPR, latest failed call: never STS-DB: OK
CRA-DB: OK
Trusted certificate NBOTrustStore/foces3_2024 -> UI:DK-O:G:23550132-5e1f-4e43-a5f9-048acf49e0b8: OK (Expires: 27-04-2024 14:25:47)
Trusted certificate NBOTrustStore/nemlogin_test -> CVR:34051178-FID:56940413: Expired (Expires: 20-04-2020 10:18:26)
Trusted certificate NBOTrustStore/test_voces3_2024 -> UI:DK-O:G:c70b0207-162e-4d3d-a7f1-a19a8e07d99b: OK (Expires: 27-04-2024 13:38:55)
Trusted certificate NBOTrustStore/lakeside_test -> CVR:25450442-FID:bootstrap: Expired (Expires: 24-02-2020 14:55:12)
Trusted certificate NBOTrustStore/sundhed_dk_test -> CVR:31908574-FID:96424869: Expired (Expires: 08-05-2020 08:51:49)
Trusted certificate NBOTrustStore/ssi_foces_2021 -> CVR:46837428-FID:92421325: OK (Expires: 16-08-2024 08:49:11)
Trusted certificate NBOTrustStore/ssi_voces_2021 -> CVR:46837428-UID:27910135: OK (Expires: 16-08-2024 08:47:23)
Trusted certificate JWTTrustStore/revoked -> CVR:30808460-FID:45327473: Ignored (Expires: 16-12-2022 15:33:47)
Trusted certificate JWTTrustStore/mk934ncocn5gwbyvvvegdce6d0ansvlz8dpljbt-0ty -> CVR:33257872-FID:68451797: Expired (Expires: 30-07-2021 07:42:33)
Trusted certificate JWTTrustStore/ssi_foces_2024 -> CVR:46837428-FID:92421325: OK (Expires: 16-08-2024 08:49:11)
Trusted certificate JWTTrustStore/test_foces3_2024 -> UI:DK-O:G:23550132-5e1f-4e43-a5f9-048acf49e0b8: OK (Expires: 27-04-2024 14:25:47)
Trusted certificate JWTTrustStore/expired -> CVR:30808460-FID:50912949: Ignored (Expires: 25-03-2014 21:52:13)
Trusted certificate JWTTrustStore/ssi_foces -> CVR:46837428-FID:92421325: Expired (Expires: 03-09-2018 16:21:07)
Trusted certificate JWTTrustStore/revoked_foces3_2024 -> UI:DK-O:G:730038f6-1662-4a4f-a6e0-1a550347fa2f: Revoked (Expires: 27-04-2024 14:42:14)
Person Information Client, latest successful call: Thu Mar 14 10:41:15 CET 2024
Person Information Client, latest failed call: never
EOS

Som en del af outputtet leveres information om de trustede certifikater, der i øjeblikket er konfigureret i STS. Formatet af disse linjer følger følgende skabelon Truststore/alias - > SubjectSerialNumber: Status (Expires: Not-After)

...

 CVR:46837428-FID:92421325: Expired (Expires: 03-09-2018 16:21:07)
Trusted certificate JWTTrustStore/revoked_foces3_2024 -> UI:DK-O:G:730038f6-1662-4a4f-a6e0-1a550347fa2f: Revoked (Expires: 27-04-2024 14:42:14)
Person Information Client, latest successful call: Thu Mar 14 10:41:15 CET 2024
Person Information Client, latest failed call: never
EOS

Som en del af outputtet leveres information om de trustede certifikater, der i øjeblikket er konfigureret i STS. Formatet af disse linjer følger følgende skabelon Truststore/alias - > SubjectSerialNumber: Status (Expires: Not-After)

Certifikater, der er på ignorelisten vil optræde i output, men deres faktiske status vil ikke påvirke den samlede status rapporteret i endpointet.

Baggrundsjob (Slettejob/Oprydningsjob)

Servicens baggrundsjobs bliver afviklet vha. en udstillede RestControllere, som kaldes vha. simpelt HTTP GET kald.
Driften vedligeholder en cron, som kalder url'er for baggrundsjobbene i et fast mønster vha. curl.

Baggrundsjob i STS findes i selvstændigt modul sts-operations og opsætningen af komponenterne, som bruges af beggrundsjobs, er defineret i henholdsvis operations.xml og sts-operations-servlet.xml.

STS har følgende baggrundsjobs:

  • STSDeceasedCleanup - Slettejob til sletning af afdødes registreringer i STS cache, hvor der er mapninger mellem CPR numre og UUID, PID og RID.

PersonInformation

Følgende parametre bruges til styringen af forbindelsen til PersonInformation servicen, som bruges på tværs af baggrundsjobs. De kan ændres i operations.properties:

NøgleDefault værdiBeskrivelse

personinformation.url

http://test1-cnsp.ekstern-test.nspop.dk:8080/stamdata-personinformation/v1

Den url som jobbet skal bruge, når den skal kalde servicen stamdata-personinformation.

personinformation.error.tolerance

0

Tolerance for hvor mange fejl PersonInformation servicen må have inden den melder tilbage at den ikke virker i alarm indikatoren

personinformation.errorcount.hours

24

Angiver, hvor lang en periode i timer, der skal kigges i efter antallet af fejl for PersonInformations alarm indikator

STSDeceasedCleanup

Baggrundsjobbet kaldes når der skal slettes registreringer for personer der har været erklæret døde det sidste år (deletion.save.deceased)

Kommando til kald af slettejob:

Code Block
languagebash
titleKommando
curl <server>/sts-operations/sts-slettejob/deceased/start


Følgende parametre til styring af STSDeceasedCleanup kan ændres i operations.properties for STS:

NøgleDefault værdiBeskrivelse

deletion.desired.execution.duration.deceased

PT20S

Den tid vi ønsker at bruge på sletning ved hvert request. Tiden er ikke garanteret, da vi kun tjekker mod den efter hver StackOperation er udført.

Default værdien er 20 sekunder.

deletion.save.deceased

P12M

Den tid som skal gå før vi sletter data for en afdød person. Dette gøres så vi ikke sletter data, hvis personens status ændres til afdød og derefter tilbage til levende.
Default værdien er 12 måneder

 deletion.batchsize.deceased

1000

Max. antal entries (f.eks. CPR) vi behandler pr. batch

personinformation.batchsize.deceased

100

Max. antal CPR vi forespørger på i en enkelt request til personinformation

Der er en max grænse for hvor lang tid jobbet må køre pr. gang (deletion.desired.execution.duration.deceased) og det kan angives her. Når jobbet har kørt den tid der er angivet, så stopper udførslen. Her efter kan jobbet kaldes igen og den vil fortsætte med processeringen, hvor jobbet stoppede sidst.

Parameteren angives som en Duration i ISO-8601 format. Dvs. eksemplet viser 20 sekunder.


Status og alarm endpoints

Kommando til kald af slette job status og alarm:

Code Block
languagebash
titleKommando
curl <server>/sts-operations/sts-slettejob/status
curl <server>/sts-operations/sts-slettejob/alarm


Status kaldet verificerer databaseadgang. Der kan returneres følgende fra statussnitfladen:

200: Der er adgang til databasen og jobbet kan anvendes.

5xx: Komponenten melder at den ikke kan anvendes.

Code Block
languagebash
HTTP/1.1 200 OK
{ "Database":"OK" } 


Alarm kaldet verificerer services, eksterne kald og databaseadgange. Denne service indeholder kun data, hvis der er alarmer.

200: Komponenten fungerer og der er ingen alarmer.

5xx: Komponenten melder at den ikke kan anvendes.


Følgende er et ekempel på et svar, hvor personinformationservice ikke er tilgængelig.

Code Block
languagebash
HTTP/1.1 500 Internal Server Error
Baggrundsjobbet StackedOperationsService fejlede sidst det blev kørt. Problemet var: Person information service kaldet returnerede status 404.
Person Information servicen har fejlet flere gange end tilladt i en given periode.


Genstart

Servicen kan genstartes ved at genstarte den docker container, som servicen den kører i.  

...