Page History
...
Alias | Beskrivelse |
Behandlingsrelationsservice ws | Behandlingsrelations- og Opfølgningsservice, Guide til Anvendere |
ConsentVerificationService ws | Samtykke service, anvenderguide |
DGWS 1.0.1 | Den Gode Webservice 1.0.1, Medcom |
HSUID-header | Healthcare Service User Identification Header |
IHE XSD | ftp://ftp.ihe.net/TF_Implementation_Material/ITI/schema/ebRS/* |
IHE WSDL | ftp://ftp.ihe.net/TF_Implementation_Material/ITI/wsdl/XDS.b_DocumentRegistry.wsdl |
ITI TF-2 | IHE IT Infrastructure (ITI) Technical Framework, Volume 2 Revision 19.0, June 17, 2022 – Final Text https://profiles.ihe.net/ITI/TF/Volume2/index.html |
ITI TF-3 | IHE IT Infrastructure (ITI) Technical Framework, Volume 3 Revision 19.0, June 17, 2022 – Final Text https://profiles.ihe.net/ITI/TF/Volume3/index.html |
ITI-43++ SOAP 1.1 WSDL | WSDL for RetrieveDocumentSet (ITI-43) med SOAP 1.1-binding udvidet med HSUID-header og DGWS-header |
ITI-43++ SOAP 1.2 WSDL | WSDL for RetrieveDocumentSet (ITI-43) med SOAP 1.2-binding udvidet med HSUID-header og DGWS-header |
MinLogService ws | Min-log Service, anvenderguide |
MTOM SOAP 1.1 | SOAP 1.1 Binding for MTOM 1.0, (W3C Member Submission 05 April 2006) |
MTOM SOAP 1.2 | SOAP Message Transmission Optimization Mechanism, (W3C Recommendation 25 January 2005) |
DDS udvikling | |
DDS Test | DDS Testvejledning |
DDS Registry query snitflade | |
DDS Repository snitflade |
...
| Brugertypen: Borger | Verifikation | Mapning til MinSpærring ServiceActor | ||
| SecurityContext | Ticket | Audience | Matche audience som findes som konfiguration i DDS | audience |
| Validity | Er valid | |||
| Message | Verificeres ikke - må gerne være der | |||
| ActingUser | UserType | Skal være Citizen | Brugertypen: Borger | |
| IdentifierFormat | Skal være der og Skal være CPR | |||
| Identifier | Skal være sat | ActingUserCpr | ||
| GivenName | Verificeres ikke - må gerne være der | |||
| SurName | Verificeres ikke - må gerne være der | |||
| Credentials | Verificeres ikke - må gerne være der | |||
| PersistentUniqueKey | Verificeres ikke - må gerne være der | |||
| Credentials.PowerOfAttorneyPrivileges | Må ikke have nogen privileger | |||
| PrincipalUser | Må ikke være der | |||
| Organisation | Verificeres ikke - må gerne være der | |||
| Client | Name | Verificeres ikke - må gerne være der | systemName | |
...
| Brugertypen: Borger på vegne af | Verifikation | Mapning til MinSpærring ServiceActor | ||
| SecurityContext | Ticket | Audience | Matche audience som findes som konfiguration i DDS | audience |
| Validity | Er valid | |||
| Message | Verificeres ikke - må gerne være der | |||
| ActingUser | UserType | Skal være Citizen | Brugertypen: Borger | |
| IdentifierFormat | Skal være der og skal være CPR | |||
| Identifier | Skal være sat | ActingUserCpr | ||
| GivenName | Verificeres ikke - må gerne være der | |||
| SurName | Verificeres ikke - må gerne være der | |||
| Credentials | Verificeres ikke - må gerne være der | |||
| PersistentUniqueKey | Verificeres ikke - må gerne være der | |||
Fuldmagt: Credentials.PowerOfAttorneyPrivileges | Skal have mindst eet privilege | PowerOfAttorneyPrivileges Relation (proxyHolder, powerOfAttorneyPrivileges) | ||
Forældremyndighed: Relations ChildCustodyHolder | Skal være der | Relation (childCustodyHolder, subjectRelationProfile) | ||
| PrincipalUser | UserType | Valideres ikke | ||
| IdentifierFormat | Skal være der og skal være CPR | |||
| Identifier | Skal være sat og må ikke være det samme som for actinguser | |||
| GivenName | ||||
| SurName | ||||
| Credentials | ||||
Forældremyndighed: Relations Child | Skal være der | Relation (childCustodyHolder, subjectRelationProfile) | ||
Forældremyndighed: Age | Skal være under konfigureret (childCustody.age.limit) værdi. Default 15 | Relation (childCustodyHolder, subjectRelationProfile) | ||
| Organisation | Verificeres ikke - må gerne være der | |||
| Client | Name | Verificeres ikke - må gerne være der | systemName | |
...
| Brugertypen: Sundhedsfaglig | Verifikation | Mapning til MinSpærring ServiceActor | ||
| SecurityContext | Ticket | Audience | Verificeres ikke - må gerne være der | |
| Validity | Er valid | |||
| Message | Verificeres ikke - må gerne være der | |||
| ActingUser | UserType | Skal være HealthCareProfessional | Brugertypen: Sundhedsfaglig | |
| IdentifierFormat | Skal være CPR | |||
| Identifier | Skal være sat | ActingUserCpr | ||
| GivenName | Verificeres ikke - må gerne være der | |||
| SurName | Verificeres ikke - må gerne være der | |||
| Credentials.NationalRole | Verificeres ikke - må gerne være der | |||
| Credentials.AuthorizationCode | Skal være der | AuthorizationCode | ||
| Credentials.EducationCode | Skal være der | EducationCode | ||
| PersistentUniqueKey | Verificeres ikke - må gerne være der | |||
| PrincipalUser | Må ikke være der | |||
| Organisation | Identifier | Verificeres ikke - må gerne være der | OrganizationCvrId hvis det er et cvr nummer | |
| identifierFormat |
Verificeres ikke - må gerne være der | |||
| Client | Name | Verificeres ikke - må gerne være der | systemName | |
...
| Brugertypen: Ikke-autoriseret bruger | Verifikation | Mapning til DDS ServiceActor | ||
| SecurityContext | Ticket | Audience | Verificeres ikke - må gerne være der | |
| Validity | Er valid | |||
| Message | Verificeres ikke - må gerne være der | |||
| ActingUser | UserType | Skal være HealthCareProfessional | Brugertypen: Sundhedsfaglig | |
| IdentifierFormat | Skal være CPR | |||
| Identifier | Skal være sat | ActingUserCpr | ||
| GivenName | Verificeres ikke - må gerne være der | |||
| SurName | Verificeres ikke - må gerne være der | |||
| Credentials.NationalRole | Må gerne være der, og anvendes hvis den er. Ellers anvendes "ingen rolle" | NationalRole | ||
| Credentials.AuthorizationCode | Må ikke være der | |||
| PersistentUniqueKey | Verificeres ikke - må gerne være der | |||
| PrincipalUser | Må ikke være der | |||
| Organisation | Identifier | Verificeres ikke - må gerne være der | OrganizationCvrId hvis det er et cvr nummer | |
| identifierFormat | Verificeres ikke - må gerne være der | |||
| Client | Name | Verificeres ikke - må gerne være der | systemName | |
...
| Brugertypen: System | Verifikation | Mapning til DDS ServiceActor | ||
| SecurityContext | Ticket | Audience | Verificeres ikke - må gerne være der | |
| Validity | Er valid | |||
| Message | Verificeres ikke - må gerne være der | |||
| ActingUser | UserType | Må ikke være der | Brugertypen: System | |
| PrincipalUser | Må ikke være der | |||
| Organisation | Identifier | Verificeres ikke - må gerne være der Hvis brugertypen transformeres til en anden type, tjekkes at dette cvr nummer er whitelistet sammen med subject serial number. | OrganizationId og OrganizationCvrId hvis det er et cvr nummer | |
| identifierFormat | Verificeres ikke - må gerne være der | |||
| Client | Name | Verificeres ikke - må gerne være der | systemName | |
...
- Sundhedsfaglig alm og på vegne af:
- organisationIdtype fra hsuid
- organisationId fra hsuid
- titel bliver sat til at være educationCode (anvendes i forbindelse med MinLog)
- Ikke-autoriseret bruger
- organisationIdtype fra hsuid
- organisationId fra hsuid
- hvis ingen national rolle sættes rollen "ingen_idkort_rolle"
- titel bliver sat til at være national rolle - ellers anvendes konfigurerbar default værdi (anvendes i forbindelse med MinLog)
- Borger
- titel bliver sat med konfigurerbar default værdi (anvendes i forbindelse med MinLog)
Brugertyperne bliver til sidst valideret for:
...
| HTML |
|---|
<iframe src="https://archi.nspop.dk/NSP/570928ca/views/f301b4a5-2e58-4c90-80d5-d5e3914448dd.html" name="test" height="640" 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.
Behandling af udtræk i DDS Repository
...
| HTML |
|---|
<iframe src="https://archi.nspop.dk/NSP/570928ca/views/e3bdeed3-50ba-460c-9c69-fb5062e908d1.html" name="test" height="330" 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.
I documentsource findes webservice-endpoint for kildesystemer, i form af mapning mellem angivet OID i udtræk, til aktuelt service endpoint for XDS dokument kilde. Kombinationen af OID og type skal være unik.
I documentregistry er der konfiguration af hvilke dokument-indeks som har Metadata for de registrede udstillede dokumenter.
I Whitelist config indeholdes de CVR-numre, hvis systemer er whitelisted som anvendersystemer, på test- og produktionsmiljø.
Designmålsætninger og -beslutninger
...
For at forbedre disse punkter er det blevet lavet muligt at konfiguerere hvilke dokumenttyper et givet registry er interessant for. Når en iti-18 søgning (Registry Stored Query) indeholder dokumenttype, kan man hermed vidersende kaldet til et udvalg af registries istedet for alle. For opsætning af dette, se driftvejldningen.
...
Validering af Actor Query Parametre
Nogle actors har ikke love til at lave søgninger (ITI-18) på alle værdier i query parametrene. Derfor kan man begrænse nogle actor/bruger typer på det parameter værdier de laver i søgningerne.
For nuværende drejer det sig om følgende brugertype:
- Borger på vegne af, med relationen fuldmagt, hvor fuldmagten kommer fra en fuldmagtstreng. Der skal være givet tilladelse til denne fuldmagtstreng for den anvendte typecode og formatcode værdi.
- Borger med forældremyndighed. Det skal være givet tilladelse til de anvendte typecode og formatcode værdier for denne brugertype.
For opsætning se driftvejledningen.
Arkitekturdesign
Dette afsnit beskriver statiske såvel som dynamiske aspekter af systemarkitekturen, herunder baggrunden for de enkelte designvalg.
...
Autentifikation og autorisation af bruger varetages af UserCheckServiceActorProvider, der som input tager den skabte instans af SecurityContext og ValidatedHsuidAttributes. Er brugeren en sundhedsperson og er der anført ansvarlig sundhedsperson cpr- og autorisationsnummer (fra Sundhedsstyrelsen), foretager UserCheck desuden kontrol af sammenhængen mellem cpr- og autorisationsnummeret Der foretages en række check og valideringer, se ovenfor under afsnittet brugertyper.
Til behandling af opslaget kaldes DDSRegistryQueryLogic, som beskrevet i afsnit DDS Registry Query Logic.
...
Derudover gør DDSRegistryQueryLogic brug af ConsentFilter, der implementerer den betingede filtrering af metadata i resultatet fra opslaget på IHE Registry. ConsentFilter kommer kun i anvendelse, når en sundhedsperson laver opslag uden anvendelse af værdispring og når sundhedspersonen er omfattet af data-specifikke samtykker.
Figur 5a UML Sekvensdiagram for DDSRegistryQueryLogic
I Figur 5a er vist et sekvensdiagram for DDSRegistryQueryLogic ved opslag foretaget af en sundhedspersons uden anvendelse af værdispring, hvor: der ikke er personligt negativt samtykke mod sundhedspersonen eller den ansvarlige sundhedsperson; der er data-specifikt negativt samtykke.
...
For en beskrivelse af byggeprocessen og eksterne/interne afhængigheder for servicen, se [DDS udvikling].
Unit test og Integrationstests
...
