Skip to content

KvalitetsIT/kombit-sf1520-example

Repository files navigation

Her beskrives baggrundsviden for kodeeksemplet, og hvad der kræves for at få det til at virke.

Testen i kodeeksemplet kalder SF1520, og printer svaret som JSON.

Overblik over certifikater

I mappen Certificates findes certifikater til integration med Serviceplatform.

Mappen Client indeholder certifikatet til klienten der bruges i dette eksempel. Den består derfor af både public (kit-test.cer) og private (kit-test.pem) key. Dette certifikat er brugt til at lave en serviceaftale med testkommunen Korsbæk, om at SF1520 må kaldes. Hvordan dette er gjort, beskrives nedenfor. kit-test.pem er af sikkerhedsmæssige grunde tom, og fremsendes separat.

Mappen Service indeholder certifikatet som bruges af services på Serviceplatformen, herunder SF1520. Hentet fra Digitaliseringskataloget hjemmeside.

Mappen STS indeholder certifikatet for Serviceplatformens STS, inklusiv en udgave tilføjet OCES rod- og udstedende certifikat (så 3 certifikater i alt). For at indikere denne tilføjelse, er "with_chain" tilføjet til filnavnet, som ellers beholder filnavnet som hentet fra Digitaliseringskataloget hjemmeside. Denne tilføjelse gør, at man blot kan tilføje denne ene fil til sit trust store, for at stole på STS'en.

Opret serviceaftale for SF1520

For at kunne kalde SF1520, skal der oprettes en serviceaftale i KOMBITs Serviceplatform, som beskrevet i dokumentationen der kan findes på Serviceplatformens hjemmeside. I dette eksempel benyttes en serviceaftale der er lavet med den fiktive testkommune "Korsbæk", så der kan kaldes med certifikatet kit-test.cer/pem.

Et eksempel der viser hvordan dette er lavet, kan findes her.

Generér C# klient

Klienten er genereret på forhånd, og ligger under Connected Services. Her vises hvordan det er gjort.

Installer nyeste dotnet-svcutil (seneste stabile version 2.1.0 virker ikke):

dotnet new tool-manifest # Hvis ny solution uden manifest

dotnet tool install --local dotnet-svcutil --version 8.0.0-preview1.24619.5

og generér klienten ud fra WSDL for SF1520 (kør fra dette repos rod):

dotnet dotnet-svcutil WsdlForIntegrations/PersonBaseDataExtendedService/wsdl/token/PersonBaseDataExtendedService.wsdl -o PersonBaseDataExtendedService --outputDir "Connected Services/PersonBaseDataExtendedService" --reference kombit-sf1520-example.csproj

Se dotnet-svcutil -h for dokumentation af de forskellige argumenter.

Se dokumentation af .NET tools for yderligere detaljer.

Installer certifikat i trust store

Certifikatet "Certificates/STS/ADG_EXTTEST_Adgangsstyring_1_with_chain.cer" skal installeres i trust store på det system der afvikler kaldet. Skal kaldet f.eks. afvikles i en Docker container, skal certifikatet mountes ind i containerens trust store.

ADG_EXTTEST_Adgangsstyring_1_with_chain.cer indeholder samme certifikat som ADG_EXTTEST_Adgangsstyring_1.cer, blot med rod- og intermediate-certifikat tilføjet.

Testdata

Udover CPR-nummeret benyttet i eksemplet, findes der en liste af CPR numre for Korsbæk-borgere på ovenstående link, som det er ok at teste med. Af en eller anden grund fremgår det fulde CPR nummer ikke af listen, men man kan f.eks. benytte følgende:

  • Kirsten Hansentest​ (0909065000): Et barn i Korsbæk
  • Frederik Arne Hansentest (1008810000): Det er Kirstens far

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages