Page History
...
- Forholde sig til de understøttede brugertyper
- Dokumentere hvorledes de understøttede brugertyper valideres og mappes (udfra modellen udbudt af NSP Security API og evt. andre kilder)
- Implementere mapning fra NSP Security API til brugertyper
TODO: SecurityContextProvider dokumenteres (og findes som development udgave)Disse tre punkter er beskrevet i de følgende afsnit
Understøttede brugertyper og dokumentation i Brugerhistorier
...
TODO: Fold hsuid header ud
Implementation af validering og mapning af brugertyper
For at opnå en mere ensartet og let-gennemskuelig implemenation bør der tages udgangspunkt i følgende opbygning. Den enkelte trin (de blå) står for forskellige aspekter i mapnings- og valideringsprocessen inden resultatet gives videre til komponentens forretningslogik.
Gliffy Diagram | ||||||||
---|---|---|---|---|---|---|---|---|
|
Processen leverer en "Actor" videre til næste trin i processen og i sidste ende til komponentens forretningslogik. Hvordan denne konkret modelleres er op til behovene i den enkelte komponent: Hvilke oplysninger er der brug for, for at komponenten kan implementere sin forretningslogik.
I det følgende gennemgås de enkelte trin (med et eksempel som forklaring)
Eksempel på Actormodellering:
NSP Eksempel Service kaldes af en ikke-autoriseret sundhedsfaglig med et bruger id-kort og en HSUID header som angiver, at man arbejder på vejne af en autoriseret læge.
Der er også lavet en "trust"-løsning, så enkelte organisationer må kalde med system id-kort og en HSUID header, der angiver, at man er en autoriseret læge, der handler på egne vegne.
Servicen kan kun kaldes af sundhedsfaglige og indeholder følgende brugertyper som hver har lidt forskelligt forretningslogik:
- Autoriseret læge der handler på egne vegne
- Autoriseret sygeplejerske der handler på vegne af en autoriseret læge
- Ikke-autoriseret sundhedsfaglig person med den Nationale Rolle "Afdelingsleder" eller "Direktør"
- Ikke-autoriseret sundhedsfaglig person der handler på vegne af en autoriseret læge
- Trustet systembruger
Derfor laver vi følgende klasser med et fælles Actor interface:
- Doctor
- Nurse
- NurseOnBehalfOfDoctor
- HealthCareProfessional
- ExecutiveHealthCareProfessional
- HealthCareProfessionalOnBehalfOfDoctor
- TrustedSystemUser
ActorProvider: Match af brugertyper
Dette trin opererer udelukkende på NSP Security API og forsøger udfra undersøgelse af NSP Security API modellen.
Eksempel på ActorProvider:
I NSP Eksempl Service laves herefter en ActorProvider klasse der har en " public Actor
getActor(SecurityContext) " metode som kalder følgende metoder:
• private Actor matchDoctor(SecurityContext)
• private Actor matchNurse(SecurityContext)
• private Actor matchNurseOnBehalfOfDoctor(SecurityContext)
• private Actor matchHealthCareProfessional(SecurityContext)
• private Actor matchExecutiveHealthCareProfessional(SecurityContext)
• private Actor matchHealthCareProfessionalOnBehalfOfDoctor(SecurityContext)
TODO: SecurityContextProvider dokumenteres (og findes som development udgave)
TODO kode eksempel fra DDS (måske pseudokode for at hjælpe)?
...