Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Navitabs
rootSTS-UUID2CPR-PROXY - Uuid2Cpr afkoblingsproxy - Leverancebeskrivelse
includeroottrue


Konfiguration

Konfiguration sker i filerne i "compose/configuration" mappen, og består af følgende filer:

...

Konfigurationsfil

Beskrivelse

client.properties

Properties vedrørende signering af requests til NemLogin Uuid2CprNemLog-servicenin opslagstjenester. Indholdet er beskrevet nedenfor.

log4j.properties

Opsætning af log-niveau og -destination. Følger NSP-standard.

log4jsosi-uuid2cprsts-proxy.xml

Opsætning af log-niveau og -destination. Følger NSP-standard.

test.p12lookup.pfx

Keystore der anvendes til signering ved kald af NemLogin Uuid2Cpr-servicen. Ved deployment skal denne keystore udskiftes med et funktionscertifikat, og der skal opsættes en Web Service Consumer i NemLogin Administrationen. Afhængigt at miljøet der deployes til skal certifikatet være et test- eller produktionscertifikat. Opsætning af Web Service Consumer i NemLogin Administrationen er beskrevet i afsnittet 'Konfiguration i NemLogin-administration'. 

sts.properties

Properties vedrørende kryptering af requests til NemLogin Uuid2Cpr-servicen NemLog-in opslagstjenester.. Indholdet er beskrevet nedenfor.

trust.jks

Keystore der anvendes til signering signaturvalidering ved kald af til NemLogin Uuid2Cpr-servicen. Indeholder også prod-certifikat under alias 'sts'STS og NemLog-in opslagstjenester.

Skal indeholde:

  • NemLogin STS'ens signeringscertifikat. (alias: sts)
  • NemLog-in opslagstjenester signeringscertifikat. (alias: eia)

Ved deployment til test kan STS'ens signeringcertifikat fra BetaTest (devtest4) miljøet findes her (under afsnittet 'Secure Token Service') og ved deployment til produktion kan det findes her.

Signeringscertifkatet for NemLog-in opslagstjenester er for øjeblikket ikke publiseret af Digitaliseringsstyrelsen, så dem skal man finde manuelt ved at slå TRACE log til og finde "BinarySecurityToken" i svaret fra servicen.

uuid2cpr-proxy.propertiesKonfiguration af servicen. Indholdet er beskrevet nedenfor.

client.properties

PropertyBeskrivelse
org.apache.ws.security.crypto.merlin.keystore.typeKeystore-type for den keystore, der anvendes til signering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester.
org.apache.ws.security.crypto.merlin.keystore.passwordPassword for den keystore, der anvendes til signering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester.
org.apache.ws.security.crypto.merlin.keystore.aliasAlias på den nøgle, der anvendes til signering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester.
org.apache.ws.security.crypto.merlin.fileAbsolut sti til den keystore, der anvendes til signering ved kald af NemLogin Uuid2Cpr-servicen NemLog-in opslagstjenester.. Skal starte med file:///-angivelsen.
org.apache.ws.security.crypto.merlin.truststore.typeKeystore-type for den keystore, der anvendes til kryptering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester.
org.apache.ws.security.crypto.merlin.truststore.passwordPassword for den keystore, der anvendes til kryptering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester.
org.apache.ws.security.crypto.merlin.truststore.fileAbsolut sti til den keystore, der anvendes til kryptering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester. Skal starte med file:///-angivelsen.

sts.properties

PropertyBeskrivelse
org.apache.ws.security.crypto.merlin.keystore.typeKeystore-type for den keystore, der anvendes til kryptering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester.
org.apache.ws.security.crypto.merlin.keystore.passwordPassword for den keystore, der anvendes til kryptering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester.
org.apache.ws.security.crypto.merlin.keystore.aliasAlias på det certifikat, der anvendes til kryptering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester.
org.apache.ws.security.crypto.merlin.fileAbsolut sti til den keystore, der anvendes til kryptering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester. Skal starte med file:///-angivelsen.

uuid2cpr-proxy.properties

PropertyBeskrivelse
app.endpointEndpoint på servicen. Bliver indsat i OpenAPI-specifikation der udstilles på /openapi.
app.nameNavn på servicen. Bruges til SLA-logning.
app.short.nameKort navn på servicen. Bruges til SLA-logning.
uuid2cpr.proxy.signature.keystore.pathAbsolut sti til den keystore, der anvendes til signering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester. Denne property anvendes ifm. overvågning af om certifikatet er gyldigt.
uuid2cpr.proxy.signature.keystore.aliasAlias på den nøgle, der anvendes til signering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester. Denne property anvendes ifm. overvågning af om certifikatet er gyldigt.
uuid2cpr.proxy.signature.usernameAlias på den nøgle, der anvendes til signering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester. Denne property anvendes ifm. overvågning af om certifikatet er gyldigt.
uuid2cpr.proxy.signature.passwordPassword for den keystore, der anvendes til signering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester.
uuid2cpr.proxy.signature.properties.fileAbsolut sti til filen client.properties. Skal starte med file:///-angivelsen.
uuid2cpr.proxy.encryption.usernameAlias på det certifikat, der anvendes til kryptering ved kald af NemLogin Uuid2CprNemLog-servicenin opslagstjenester.
uuid2cpr.proxy.encryption.properties.fileAbsolut sti til filen sts.properties. Skal starte med file:///-angivelsen.
uuid2cpr.proxy.applies.toEntityID på den NemLogin-service (WSP) der ønskes kaldt.
uuid2cpr.proxy.security.token.service.urlAdresse på NemLogin STS.
uuid2cpr.proxy.lookup.service.urlAdresse på NemLogin Uuid2CprService NemLog-in opslagstjenester.
uuid2cpr.proxy.tokenlookup.timeclient.topool.livesizeStørrelse på object pool af jax-ws klienter til NemLog-in opslagstjenesterLevetid (i ms) på tokens fra NemLogin STS.

Overvågning

Servicen udstiller følgende HTTP GET-operationer til overvågning af sin tilstand:

Funktion

Beskrivelse

Eksempel-response

/status

NSP Standardfunktion. HTTP-response-code angiver servicens tilgængelighed.

Der tjekkes følgende egenskaber, og rapporteres i response body'en hvis de ikke er opfyldt:

 - er klientcertifikatet der anvendes til kald af NemLogin Uuid2CprNemLog-servicen in opslagstjenester gyldigt?


HTTP/1.1 200 OK

Connection: keep-alive

Content-Type: text/plain;charset=utf-8

Content-Length: 0

Date: Thu, 10 Mar 2022 12:38:56 GMT

/versionNSP Standardfunktion. Versions-nummeret sendes som response-text

HTTP/1.1 200 OK
Connection: keep-alive
Transfer-Encoding: chunked
Content-Type: text/plain;charset=utf-8
Date: Thu, 10 Mar 2022 14:25:37 GMT

1.0.0-SNAPSHOT

Status og forventet reaktion herpå

I strukturen returneret fra kald til "/status" fås følgende kombinationer

...

 - HTTP 500 - certifikat er udløbet. Nyt certifikat skal bestillies, WSC-konfiguration i NemLogin-administration skal opdateres med nyt certifikat, ny keystore skal lægges ind i servicen.

Konfiguration i NemLogin-administration

For at man kan kalde Digitaliseringsstyrelsens NemLog-in opslagstjenester, skal man være konfigureret som Web Service Consumer (WSC) i NemLogin-administrationen. I det følgende beskrives hvordan denne opsætning foretages. Vejledningen er skrevet med udgangspunkt i afsnit 2.1 i manualen for opslags tjenesterne og afsnit 7.24 og fremefter i manualen for NemLogin-administrationen. Manualerne indeholder flere detaljer.

NemLogin-administrationen finder man på følgende URL'er:

 - devtest4: https://administration.devtest4-nemlog-in.dk/

 - produktion: https://administration.nemlog-in.dk/

Forudsætninger

Oprettelsen som WSC kræver at der er udstedt et certifikat, som skal bruges til signering af requests til NemLog-in opslagstjenester. Certifikatet skal være et FOCES- eller VOCES-certifikat. Til oprettelsen som WSC skal man bruge public key-delen i PEM-format.

Opsætning

De følgende afsnit beskriver hvordan opsætning som WSC udføres.

Log ind i administrationsportal

Log ind i NemLogin med medarbejdersignatur (URL'er er angivet tidligere). Nedenstående skærmbillede er forventet.

Image Added

Tilføj systembrugeradministrator

Klik på 'Add system user administrator'

Image Added

Vælg 'Add system user administrator for the IT system provider manually'.

Image Added

Udfyld formularen med en email-adresse som der er læseadgang til, og RID-nummer fra det medarbejdercertifikat, der er logget ind med. Vigtigt: Der skal anvendes en email som kan læses, da den skal bruges til at modtage bekræftelse på rettighedsanmodningen.

Image Added

Opret systembruger

Fra 'Home' trykkes på 'Add system user'.

Image Added

Udfyld formularen med passende værdier, og upload certifikatet som skal anvendes til signering af requests. Der kan anvendes samme certifikat til Production og Integrationtest. Tryk på 'Save technical information'.

Image Added

Tilgå systembruger

Fra 'Home' navigeres til oversigten oversigten over systembrugere. Vælg den nyoprettede systembruger.

Image Added

Opret anmodning om rettigheder

Tryk på 'Request access to web service' for at oprette en anmodning om rettigheder.

Image Added

Vælg rettighed

Vælg rettigheden 'Lookup Service'.

Image Added

Udfyld anmodning

Sæt flueben ved privilegiet 'subjectserialnumbercpr', og ingen andre.  Udfyld kommentarfeltet med en beskrivelse af hvad adgangen skal bruges til. Tryk på 'Submit request'.

Image Added

Afvent godkendelse

Anmodningen skal nu godkendes af Digitaliseringsstyrelsen. Når dette sker, vil der blive sendt en email til systembrugeradministratoren som blev oprettet tidligere. Emnefeltet vil indeholde tekten 'Anmodning om adgang til web service er blevet godkendt'.

Provisioner til integrationstest og produktion

Under 'System User Details'-siden trykkes først 'Provision to integrationtest' og dernæst 'Provision to production'.

Image Added

Afprøv adgangen

Adgangen kan nu afprøves ved at kalde sts-uuid2cpr-proxy servicen. Eksempel:

Request:

curl -i localhost:8080/uuid2cpr-proxy-api/service/lookup/UI:DK-E:G:2634ccc3-225a-44ee-94bc-565904f46ead

Response:

HTTP/1.1 200 OK
Connection: keep-alive
Content-Type: application/json
Content-Length: 22
Date: Wed, 09 Mar 2022 15:28:08 GMT

{"value":"2501879875"}

Den ovenstående returkode opnås når man tilgår NemLog-in opslagstjenester med operationen uuid2cpr i devtest4-miljøet. I produktion vil returkoden være 404, da der ikke eksisterer en bruger med det angivne uuid.

Vedligehold af Web Service Consumer-konfiguration

Det er nødvendigt at forny det certifikat der anvendes i Web Service Consumer-konfigurationen, når det gamle er ved at udløbe. Denne proces er beskrevet nedenfor.

Fra 'Home' navigeres til oversigten oversigten over systembrugere. Vælg den ønskede systembruger.

Image Added

Upload herefter det nye certifikat, og tryk på 'Save technical information'.

Image Added

Fejlfinding

Fejlfinding foregår ved gennemsyn af logfilerne. Der er ingen kendte fejl.

Oprydning

Logfiler håndteres efter NSP standard.

...