1. Indledning

Seal.Java er udvidet for at understøtte omveksling af et eHDSI IDWS XUA Bootstrap token (DKNCPBST) udsted af "Danish National Contact Point" til et eHDSI IDWS XUA Identity Token (IDWS-eHDSI). Den brugerrettede forklaring på dette er følgende to brugsscenarier:

  1. Udenlandske apoteker skal kunne udlevere medicin på baggrund af en dansk recept i FMK når en dansk borger henvender sig (ePrescription)
  2. Udenlandske sundhedspersoner skal kunne hente en oversigt over en dansk borgers sundhedsoplysninger, når de har denne i behandling (PatientSummary). 

De danske tjenester skal fortsat være en del af SOSI-føderationen og alene stole på adgangsbilletter udstedt af SOSI-STS.

Med omvekslingssnitfladen indføres et nyt koncept i form af en ’issuance policy’ som indgår i tokens, hvilket skal gøre det muligt for token-udstedere at differentiere mellem forskellige udstedelsespolitiker (fx hvis spærrelister eller registre ikke er tilgængelige). En ’issuance policy’ angives som streng i tokenet fx som ’urn:dk:sosi:ehdsi-idws-xua:standard’.

2. Overblik

Her er et overblik over de metoder og klasser STS'en benytter fra Seal.Java i forbindelse med denne omveksling:

KlasseMetodeBeskrivelse
DkncpBootstrapSamlAssertion
Repræsentere det indgående DKNCP Bootstrap token
EhdsiIdwsXuaEmployeeIdentityToken
Repræsentere det udgående EHDSI IDWS XUA Identity token



DkncpBootstrapSamlAssertionToEhdsiIdwsXuaEmployeeIdentityTokenRequest
Repræsentere et deserialiseret request
DkncpBootstrapSamlAssertionToEhdsiIdwsXuaEmployeeIdentityTokenResponse
Repræsentere et deserialiseret response



EHDSIFactorycreateDkncpBootstrapSamlAssertionBuilder()Bygger et DkncpBootstrapSamlAssertion (kun test)
EHDSIFactorycreateDkncpBootstrapSamlAssertionToEhdsiIdwsXuaEmployeeIdentityTokenRequestDOMBuilder()Serialisering af request (kun test)
EHDSIFactorycreateDkncpBootstrapSamlAssertionToEhdsiIdwsXuaEmployeedentityTokenRequestModelBuilder()Deserialisering af request
EHDSIFactorycreateEhdsiIdwsXuaEmployeeIdentityTokenBuilder()Bygger et EhdsiIdwsXuaEmployeeIdentityToken
EHDSIFactorycreateDkncpBootstrapSamlAssertionToEhdsiIdwsXuaEmployeeIdentityTokenResponseDOMBuilder()Serialisering af response
EHDSIFactorycreateDkncpBootstrapSamlAssertionToEhdsiIdwsXuaEmployeeIdentityTokenResponseModelBuilder()Deserialisering af response (kun test)


Flowet der viser hvordan STS'en benytter dem:

eHDSI IDWS XUA omveksling

3. SAML attributter

Den nye profil indeholder følgende SAML attributter:

Friendly NameNameMandatory
XSPA Subjecturn:oasis:names:tc:xspa:1.0:subject:subject-idYes
XSPA Roleurn:oasis:names:tc:xacml:2.0:subject:roleYes
XSPA permissionsurn:oasis:names:tc:xspa:1.0:subject:hl7:permissionNo
EHDSI OnBehalfOfurn:ehdsi:names:subject:on-behalf-ofNo
XSPA Organizationurn:oasis:names:tc:xspa:1.0:subject:organizationNo
XSPA Organization Idurn:oasis:names:tc:xspa:1.0:subject:organization-idYes
EHDSI Healthcare Facility Typeurn:ehdsi:names:subject:healthcare-facility-typeYes
XSPA Purpose of Useurn:oasis:names:tc:xspa:1.0:subject:purposeofuseYes
XSPA Localityurn:oasis:names:tc:xspa:1.0:environment:localityYes
XUA Patient Idurn:oasis:names:tc:xacml:2.0:resource:resource-idYes
NSIS AssuranceLevelhttps://data.gov.dk/concept/core/nsis/loaYes*
NIST AssuranceLeveldk:gov:saml:attribute:AssuranceLevelYes*
IDWS XUA SpecVersionurn:dk:healthcare:saml:SpecVersionYes
IDWS XUA IssuancePolicyurn:dk:healthcare:saml:IssuancePolicyYes
EHDSI Country of Treatmenturn:dk:healthcare:saml:CountryOfTreatmentYes


Detaljerne omkring hver enkelt attribut + eksempler er beskrevet her: https://github.com/Sundhedsdatastyrelsen/epps-bootstrap-poc/wiki/eHDSI-IDWS-XUA-Token-Profile-V.02

  • No labels