Info |
---|
Her kan du finde beskrivelse af Staging komponentStagingkomponent, funktionalitet og opbygning af komponenten samt beskrivelse af snitflader, som anvendere af Staging komponenten Stagingkomponenten skal benytte. Redaktør: Kurt Hansen |
Expand | ||
---|---|---|
| ||
|
Formål med Staging komponentenStagingkomponenten
Formålet med Staging komponenten Stagingkomponenten er at tilbyde en løsning til myndigheder, der ikke har teknisk mulighed for at udstille data på en snitflade, der kan tilgås af Orkestreringskomponenten, således at data kan sammenstilles med data fra øvrige datakilder og leveres til visningsklienter. Forhold hos myndigheder er typisk grundet i tekniske forhold, fx at fagsystemer er placeret på et lukket netværk, der ikke kan tilgås fra ekstern systemer.
Staging komponenten Stagingkomponenten tilbyder en staging funktionalitetstagingfunktionalitet, hvor staging i denne sammenhæng betyder, at data som en myndighed vil levere til Mit Overblik, placeres eksternt i forhold til myndighedens it-miljø og udstilles på en standardiseret snitflade i henhold til standard datamodeller og snitflader for Orkestreringskomponenten.
Staging er endvidere beskrevet i Referencearkitektur for Digitalt overblik under Staging-komponentStagingkomponent, hvor det er et implementeringsscenarie, der udstiller alle integrationslagets services og kan anvendes på lige fod med andre realiseringer af integrationslaget.
Overordnet omfatter Staging komponenten Stagingkomponenten følgende:
Staging komponenten Stagingkomponenten udstiller data på vegne af myndigheden, fx til Orkestreringskomponenten og i henhold til standard datamodeller og snitflader gældende for Orkestreringskomponenten, fx standard snitflade for BorgervendtSag.
Opbevaring af en kopi af myndighedsdata der skal vises i Mit Overblik.
Der er snitflader, hvor myndigheder kan aflevere data til staging, henholdsvis oprettelse, opdatering og slette.
Omfatter den fornødne sikkerhed for opbevaring og udstilling af data, så data kan opbevares sikkert og kun kan tilgås af Orkestreringskomponenten.
Funktionelle kapabiliteter
Staging komponent Stagingkomponent kan opbevare data fra forskellige myndigheder.
Staging komponent Stagingkomponent kan opbevare data fra samme myndighed for forskellige datamodeller.
Staging komponent Stagingkomponent understøtter de standardiserede snitflader specificeret for Orkestreringskomponenten, dvs. udstiller de samme services for de forskellige datamodeller som andre datakilder udstiller.
Staging komponent Stagingkomponent udstiller snitflader, så myndigheder kan opdatere data opbevaret i Staging komponentenStagingkomponenten. Det skal være muligt at lave deltaopdateringer af data, dvs. opdatere en delmængde af data, slette eller tilføje nye dataobjekter.
Staging komponent Stagingkomponent kan i udgangspunktet ikke tilbyde transformation af data. Ansvaret for tranformation fra myndighedens interne datamodeller til standard datamodel (model fra Orkestreringskomponent) ligger hos den dataansvarlige myndighed.
Staging komponent Stagingkomponent kan nemt udvides med understøttelse af nye datamodeller i takt med at disse implementeres i Orkestreringskomponenten.
Data skal teknisk valideres inden de opdateres i Staging komponentenStagingkomponenten, men der skal ikke foretages nogen forretningsmæssig validering af data.
...
Funktionalitet er illustreret i nedenstående ArchiMate diagram:
...
Non-funktionelle kapabiliteter
Gennem REST og SFTP udstilles operationer til at oprette, slette og opdatere data for datakilder, således at datakilder kan lægge data op i Stagingkomponenten. Operationerne vil godtage JSON format.
Staging komponent Stagingkomponent har den fornødne tilgængelighed, dvs. en tilgængelighed tilsvarende Orkestreringskomponentens.
Staging komponent Stagingkomponent kan deployeres som en selvstændig komponent - også uden for Orkestreringskomponentens miljø.
Staging komponent Stagingkomponent har brugerstyring på opdatering af data, så en myndighed ikke kan opdatere data tilhørende en anden myndighed.
Staging komponent Stagingkomponent har høj sikkerhed, da der opbevares personhenførbare og potentielt personfølsomme data. Diskene hvor data lagres er krypteret med AES-256, dvs. stærk kryptering.
For at sikre sporing af data fra datakilde til bruger, hvor Stagingkomponenten står som datakilde, logger vi de svar, der sendes til Orkestreringskomponenten i en krypteret log. Den krypterede svar-log gemmes i minimum 30 dage.
Opbygning af Staging komponentenStagingkomponenten
Opbevaring af data
For at kunne opbevare data sikkert fra forskellige myndigheder, benyttes en postgreSQL database. Data i databasen er krypteret og lever derfor op til kravene om opbevaring af personfølsomme data. Krypteringen er AES-256, så der er tale om stærk kryptering.
...
For at Orkestreringskomponenten skal kunne kalde Staging komponenten Stagingkomponenten på samme måde som en hver anden dataservice, vil snitfladerne blive implementeret helt som var det en datakilde, der skulle udstille data. For hver borgervendt datamodel udstilles liste og detalje snitflade. For hver myndighedsvendt datamodel udstilles en snitflade.
...
Identifikation af dataobjekter
For at Staging komponenten Stagingkomponenten unikt kan identificere de objekter, datakilderne lægger op i Stagingkomponenten, skal datakilderne levere et unikt id inden for deres domæne sammen med hvert objekt. (uniktID + dataobjekt). Datakilderne har ansvaret for at vedligeholde sammenhængen mellem uniktID og dataobjekt.
...
De operationer, der skal være tilgængelige gennem SFTP er overwrite, add og delete, hvilket spejler de operationer, der er tilgængelige gennem REST. Filformatet vil være JSON og for hver operation, skal der bruges et specifikt skema. Skemaet skal være ”operation”; ”data”. For operationerne overwrite og add er data en liste af dataobjekter med unikke identifikatorer for datakilden. For delete operationen er data en liste af unikke identifikatorer. Når filen er læst, vil den blive transformeret til et format, der stemmer overens med det, der benyttes i Stagingkomponenten, og det samme flow som for en REST operation, vil blive brugt. Når operationen er afsluttet, vil den originale fil blive slettet, og der vil blive genereret og lagt en kvittering til myndigheden. Skemaet for de tre operationer er indeholdt i snitflade-beskrivelsesdokumentet nedenfor.
Transformation af data
Staging komponenten Stagingkomponenten transformerer ikke data. Data skal leveres som dataobjekter, der kan udstille gennem de snitflader, der er defineret for de forskellige datamodeller.
Den transformation, der forgår foregår i Staging komponenten Stagingkomponenten, er mellem afleveringsformat, opbevaringsformat og svarformat. Så forretningsdata ændres.
Udvidelse med flere datamodeller
Staging komponenten Stagingkomponenten skal ligesom Orkestreringskomponenten kunne udvides. Så det at opbevare og udstille data fra flere datamodeller skal bygges efter samme principper, hvor det er konfigurationsbestemt. Data skal opbevares så generisk som muligt, således at data i det omfang det er muligt, er indkapslet og uafhængigt af specifik datamodel. For hver borgervendt datamodel skal det være cprCPR-nummer sammen med datamodel og dataservice, der kan bruges som nøgle til fremsøgning af objekter. For hver myndighedsvendt datamodel skal det være datamodel og dataservice, der kan bruges som nøgle til fremsøgning af objekter.
...
For at sikre at dataobjekter kan anvendes af Orkestreringskomponenten og visningsklienter, skal disse skemavalideres ved indlæggelse. Ved valideringsfejl vil der blive svaret med ”bad request” til datakilden, der lægger data op.
Der foretages ikke nogen form for forretningslogisk validering i Staging komponentenStagingkomponenten.
Sammenhængen mellem liste data listedata og detalje data detaljedata bliver ikke valideret. Dette gør det også muligt for datakilder selv at vælge, om de vil udstille begge typer data (liste og detalje) eller kun en enkelt type gennem Staging komponentenStagingkomponenten.
Håndtering af fejlbeskeder fra Orkestreringskomponenten
Fejlbeskeder fra Orkestreringskomponenten vil blive opsamlet og logget i Staging komponentenStagingkomponenten.
Sporing af data på tværs af datakilde, Staging komponentStagingkomponent, Orkestreringskomponent og visningsklient
For at sikre sporing af data på tværs af de forskellige systemer, skal der være en unik reference, der ikke indeholder personfølsomme data. Datakilderne skal vedligeholde et uniktID for objekter, der lægges op. Dette ID kan sammen med datakilde identifikation bruges på tværs af Staging komponent Stagingkomponent og datakilde. Mellem Staging komponentStagingkomponent, Orkestreringskomponent og visningsklient kan korrelationsnøglen anvendes til at identificere forespørgsel og data. På den måde er der sporbarhed fra visningsklient til datakilde, også gennem Staging komponentenStagingkomponenten.
Snitflader til
...
Stagingkomponenten
Teknisk beskrivelse af snitflader til Staging komponenten Stagingkomponenten er beskrevet i nedenstående dokument.
...