Page History
...
- Borger (alm og på vegne af)
- Sundhedsperson (alm og på vegne af)
- Ikke-autoriseret sundhedsprofessionel
- Systembruger (alm og på vegne af)
Systembrugeren er der kun således at systemer (i praksis sundhed.dk) kan anvende DDS og ved hjælp af en medsendt HSUID header kan opnå status som een rigtig brugertype.
Bestemmelse og mapning til actor
De enkelte brugertyper bestemmes udfra modellen, der udstilles i Security API. Disse regler er opsummeret i tabellerne nedenfor.v
| Brugertypen: Borger | Verifikation | Mapning til MinSpærring ServiceActor | ||
| SecurityContext | Ticket | Audience |
Skal være der | audience |
| Validity | Er valid | |||
| Message | Verificeres ikke - må gerne være der | |||
| ActingUser | UserType | Skal være Citizen | Brugertypen: Borger | |
| IdentifierFormat |
Verificeres ikke - må gerne være der | |||
| Identifier |
Verificeres ikke - må gerne være der | 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 | |||
| 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: Sundhedsperson | 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 |
Verificeres ikke - må gerne være der | |||
| Identifier |
Verificeres ikke - må gerne være der | 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 | ||
| PersistentUniqueKey | Verificeres ikke - må gerne være der | |||
| PrincipalUser | Må ikke være der | |||
| Organisation | Identifier |
Verificeres ikke - må gerne være der | ||
| identifierFormat |
Verificeres ikke - må gerne være der | |||
| Client | Name | Verificeres ikke - må gerne være der | systemName | |
...
| Brugertypen: Ikke-autoriseret sundhedsprofessionel | 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 |
Verificeres ikke - må gerne være der | |||
| Identifier |
Verificeres ikke - må gerne være der | 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 | ||
| 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. | cvr | |
| identifierFormat |
Verificeres ikke - må gerne være der | |||
| Client | Name | Verificeres ikke - må gerne være der | systemName | |
| Brugertypen: Ikke defineret | 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 | ActingUser må ikke være der | Brugertypen: Ikke defineret | PrincipalUser | Må ikke være der | Organisation | Identifier | Verificeres ikke - må gerne være der | identifierFormat | Verificeres ikke - må gerne være der | Client | Name | Verificeres ikke - må gerne være der | systemName |
| Brugertypen: Ikke defineret på vegne af | 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 | ActingUser må ikke være der | Brugertypen: Ikke defineret på vegne af | PrincipalUser | Skal være der | Organisation | Identifier | Verificeres ikke - må gerne være der | identifierFormat | Verificeres ikke - må gerne være der | Client | Name | Verificeres ikke - må gerne være der | systemName |
Transformation af Udefineret bruger
En udefineret bruger giver ikke mening i sig selv, og skal mappes over til en rigtig bruger. Andre typer brugere kan også mappes til nye typer
Transformation af brugertyper
En system bruger giver ikke mening i sig selv, og skal mappes over til en rigtig bruger. Andre brugertyper kan også mappes til andre typer på baggrund af hsuid header information. Der findes følgende tranformationer:
Ikke-autoriseret sundhedsprofessionel >> SundhedspersonIkke-autoriseret sundhedsprofessionel >> Sundhedsperson på vegne afBorger >> Borger på vegne afUdefineret type >> borger på vegne afUdefineret type >> borgerUdefineret type på vegne af >> Sundhedsperson på vegne af- System >> Sundhedsperson
- System >> Sundhedsperson på vegne af
- Sundhedsperson >> Sundhedsperson på vegne af
- Ikke-autoriseret sundhedsprofessione sundhedsprofessionel >> Sundhedsperson på vegne af
- System >> borger på vegne af
- System >> borger borger >> borger på vegne af
...
- borger >> borger på vegne af
System >> Brugertypen Sundhedsperson | Verifikation | Mapning til DDS ServiceActor | ||
HSUID Header | userType | Skal være der og være HEALTHCAREPROFESSIONAL | Brugertypen: Sundhedsfaglig | |
actingUserCivilRegistrationNumber | Skal være sat | ActingUserCpr | ||
responsibleUserRegistrationNumber | Må ikke være sat eller hvis sat skal den være anderledes end actingUserCivilRegistrationNumber | |||
|
| |||
|
|
| ||
systemName | Verificeres ikke - må gerne være der | systemName fra SecurityContext | ||
|
| |||
userAuthorizationCode | Skal være sat og valideres mod db | AuthorizationCode | ||
...
System >> Brugertypen Borger | Verifikation | Mapning til DDS ServiceActor | |||
HSUID Header | userType | Skal være der og skal være CITIZEN | Brugertypen: Borger | ||
actingUserCivilRegistrationNumber | Verificeres ikke - må gerne være der | ActingUserCpr | |||
responsibleUserRegistrationNumber | Verificeres ikke - må gerne være der | ResponsibleUserCpr | |||
systemName | Verificeres ikke - må gerne være der | systemName fra SecurityContext | |||
| userAuthorizationCode |
| der|||
-------- vvv nedenfor skal slettes når enig
- Ikke-autoriseret sundhedsprofessionel >> Sundhedsperson
- Ikke-autoriseret sundhedsprofessionel >> Sundhedsperson på vegne af
- Borger >> Borger på vegne af
- Udefineret type >> borger på vegne af
- Udefineret type >> borger
- Udefineret type på vegne af >> Sundhedsperson på vegne af
. Systembrugeren er der kun således at systemer (i praksis sundhed.dk) kan anvende DDS og ved hjælp af en medsendt HSUID header kan opnå status som een af brugertyperne Borger eller Sundhedsfaglig
| ||||
userAuthorizationCode | Verificeres ikke - må gerne være der |
-------- vvv nedenfor skal slettes når enigHar fjernet sunhed.dk i parentest efter brugertyperne. skal måske sættes på igen.
Ikke-autoriseret sundhedsprofessionel >> Brugertypen Sundhedsperson | Verifikation | Mapning til DDS ServiceActor | ||
HSUID Header | userType | Skal være der og være HEALTHCAREPROFESSIONAL | Brugertypen: Sundhedsfaglig | |
actingUserCpr på SecurityContext skal være tom | ||||
actingUserCivilRegistrationNumber |
| ActingUserCpr | ||
responsibleUserRegistrationNumber | Verificeres ikke - må gerne være der Må ikke være sat eller være anderledes end actingUserCivilRegistrationNumber | |||
|
| |||
|
|
| ||
systemName | Verificeres ikke - må gerne være der | systemName fra SecurityContext | ||
|
| |||
userAuthorizationCode | Skal være sat og valideres mod db?? | AuthorizationCode | ||
...
- Sundhedsperson alm og på vegne af:
- organisationIdtype fra hsuid
- organisationId fra hsuid
- Ikke autoriseret sundhedsprofessionel:
- organisationIdtype fra hsuid
- organisationId fra hsuid
- hvis ingen antional rolle sættes rollen "ingen_idkort_rolle"
- CitizenOnBehalfOf
- Relation mellem borgere findes
Brugertyperne bliver til sidst valideret for:
- Borger
- audience skal være "https://audience.nspop.dk/dds"
- Ikke autoriseret sundhedsprofessionel
- Hvis hsuidheader er af typen citizen og har cpr nummer, så skal dette matche security context acting user
- Alle roller
- acting user cpr på security context skal matche den på hsuid header hvis udfyldt
- Borger på vegne af
- Der skal være fundet en relation eller den påstående (via hsuid) relation skal kontrolleres
- Sundhedsperson og sundhedsperson på vegne afSundhedsperson
- hvis authorisationkode stammer fra hsuid header valideres denne kode
- hvis hsuidheader er af typen healthcareprofessional og security context acting user er udfyldt, skal denne match den på hsuid header.authorisationkode stammer fra hsuid skal den matche den fra security context
- Den endelige brugertype må ikke være "Udefineret type" eller "Udefineret type på vegne af"af typen System
- Der skal være een og kun een type
Brugertyper og adgangsscenarier
...