Versions Compared

Key

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

AFVENTER ENDELIG GODKENDELSE

Navitabs
rootSOR Opslag Service (SORLS) - Leverancebeskrivelse
includeroottrue


...

Denne service bruger SOAP protokollen og SOAP besked som kommnukation protokollen og SOAP besked som kommunikation mellem hver klient og service endpoint. Opslag servicen er forsynet med fire SOAP fire SOAP operationer, nemlig:

  • GetSorEntity
  • Search
  • ShakSorMap
  • SorShakMap 

Ovennævnte operationer er hovedsagelig læse operationer som henter data fra back-end SDM databasen. Følgende diagram viser en overordnede arkitektur:

Gliffy Diagram
displayNameOpslag-Arkitektur
nameOpslag-Arkitektur
pagePin12

Design

Teknologi og design i forhold til NSP's Husregler

For at lægge en service på NSP, så skal Husregler for udvikling til NSP overholdes. I projektet er der gået ud fra version 2.1 af disse.


HTML
<iframe src="https://archi.nspop.dk/NSP/570928ca/views/d458477d-9c70-41c2-93c8-151a85a63ab7.html" name="test" height="500" width="800">You need a Frames Capable browser to view this content.</iframe>   

* Hver kasse i ovenstående diagram har en kort forklaring, som kommer frem i et nyt browservindue, når der klikkes på kassen.

Audit logning

For audit logning bliver følgende logget specifikt:

  • MessageID - som listet i standard DGWS headers
  • Operation - navnet på den SOAP operation der er kaldt
  • Name - ejerens navn på det certifikat, som er brugt til at signere forespørgelsen; listet i AlternativeIdentifier i security DGWS headeren
  • ActingUserType - system user eller healthcare professional user
  • OrganisationName Organization - organisationens navn på det certifikat, som er brugt til at signere forespørgelsen; listet i AlternativeIdentifier i security DGWS headeren
  • CVR - organisationens CVR på det certifikat, som er brugt til at signere forespørgelsen; listet i AlternativeIdentifier i security DGWS headeren
  • CertID - FID/UID/RID på det certifikat, som er brugt til at signere forespørgelsen; listet i AlternativeIdentifier i security DGWS headeren
  • forespørgslen
  • OrganisationIdentifier - typisk organisationens CVR
  • OrganisationIdentifierFormat - format for organisationens identifier
  • ClientName - klientens navn
  • ClientPersistentUniqueKey - typisk CVR-FID/UID
  • Roles - listen af roller forespørgslen har tilladelse til at bruge, som sendt med i User elementet i forespørgslen
  • Entities - listen af SOR ID'er forespørgslen har tilladelse til at redigere i/under, som sendt med i User elementet i forespørgslen

Yderligere logges for ikke-systembrugere:

  • ActingUserIdentifier - typisk CPR
  • ActingUserIdentifierFormat - format for user identifier
  • ActingUserGivenName - fornavn
  • ActingUserSurName - efternavn
  • UserPersistentUniqueKey - typisk CVR-RIDCertType - typen af det certifikat, som er brugt til at signere forespørgelsen; listet i AlternativeIdentifier i security DGWS headeren

Statisk konfiguration i property fil

...

Dynamisk konfiguration af databaser

Opslag servicen bruger servicen bruger kun dynamisk konfiguration et enkelt sted, og det er i forbindelse af autorisering af forespørgelser forespørgsler i Sor databasen og selve forespørgelser i forespørgsler i SDM Sor databasen. Hver enkel forespørgsel foretages mens servicen mens servicen kører, uden at en genstart er nødvendig og autorisering foretages for enhver forespørgsel. Disse to databaser bliver udelukkende brugt til CVR whitelisting af forespørgelser forespørgsler og de fire tre soap operationer som Search, GetSorEntity, SorShakMap og ShakSorMap forespøgseler.

Servicen forventer at datasourcer til disse to databaser datasources til disse to databaser er sat op igennem Wildfly, og er tilgængelig via Java Naming and Directory Interface (JNDI).


HTML
<iframe src="https://archi.nspop.dk/NSP/570928ca/views/ca22263d-bad2-4a8d-af1c-215650fd59bd.html" name="test" height="170" width="800">You need a Frames Capable browser to view this content.</iframe>   

* Hver kasse i ovenstående diagram har en kort forklaring, som kommer frem i et nyt browservindue, når der klikkes på kassen.

Brug af Docker under udvikling

NSP har et fremtidig ønske om, at kunne benytte Docker til fremtidige deployments af services på platformen. Der er allerede udstillet nogle images, således at serviceudviklere kan opstille et miljø der ligner produktion, til test og udvikling af deres services. For at understøtte denne retning, så er der blevet lavet et Docker image af SORLS, baseret på images leveret af NSP.

Ikke tillade virksomheds OCES-certifikater

Adgang

Servicen tillader På trods af, at servicen skal tillade niveau 3 og 4 forespørgelser, så er det kun funktions OCES-certifikater fra niveau 3 som er tilladt. Der har været ønske om ikke at tillade virksomheds OCES-certifikaterforespørgsler for både OCES2 og OCES3. 'På vegne af' for MOCES tillades ikke adgang.

Flowchart

Nedenfor ses et eksempel på de fire forskellige kald igennem servicen for operationerne GerSorEntity, Search, SorShakMap, ShakSorMap. Flowet vil være det samme for alle operationer, hvor udelukkende kald og svar til og fra SdmDBClient er anderledes.

Gliffy Diagram
displayNameSequenceDiagram-SorLookUpService
nameSequenceDiagram-SorLookUpService
pagePin13

Klassen SorDBClient  laver kald til Sor databasen, som ikke er tegnet med.

...