Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Navitabs
rootStamdatamodul (SDM)
firsttabRegisterudtrækservices (SDM)
includeroottrue

...



Denne "Kom Godt i Gang Guide" omhandler opslag i SAES-komponenten. Guiden er beregnet til it-faglige personer som skal til eller er i gang med at udvikle systemer, der skal integrere med SAES-komponenten på platformen. Det anbefales at Platformsintroduktion læses inden denne guide.


OBS: Denne guide  er under revision - dele af indholdet mangler opdatering.



Table of Contents

tandplejere
Numbered Headings

Servicen

SAES står for Stamdata Autorisation Enkeltopslags Service, og tjene tjener det ene formål at slå op i autorisationsregisteret. Servicen udstilles på alle NSP installationer, og vil svare på baggrund af forholdvis aktuel data.

Autorisationer

Alle sundhedsfaglige personer er udstyret med en mindst én autorisation. Denne autorisation dækker over en sundhedsfaglig persons sundhedsfagligpersons CPR nummer og uddannelse, hvortil der knyttes en entydig identifikation. På den denne måde kan identiteten og rollen alene specificere specificeres ved denne identifikation.

Hvis en sundhedsfaglig person har flere uddanelseruddannelser, han har vedkommende også flere autorisationer. Den autorisation, der er relevant i den virken, som personen er iagerer med, skal benyttes. For yderligere information om autorisationer se sundhedsstyrelsen beskrivelse pa deres hjemmeside.

Uddannelseskoder

Enhver anerkendt dansk uddannelse af har en uddannelseskode. Disse er blabl.a. specificeret hos Danmarks Statistik. Der er dog kun en delmængde af disse er , der anvendes til her omtalte autorisationer. I skrivende stund er disse:

Info

Nedenstående er sidst opdateret 15-04-2016 - data er taget fra en webservice hos SST.

UddannelseskodeFaggruppenavn
4498Optiker
5015
5151Fysioterapeut
5152Social- og sundhedsassistent
5153Ergoterapeut
5155Fodterapeut
5158Radiograf
5159Bioanalytiker
5166Sygeplejerske
5175Jordemoder
5176Kontaktlinseoptiker
5176Optometrist
5265Kiropraktor
5431Tandplejer
5432Klinisk tandtekniker
5433Tandlæge
5451Klinisk diætist
7170Læge
9495Bandagist

Dog skal den aktuelle liste hentes via webservicen hos SST.


Offentlig service

Det er muligt at slå autorisationer op direkte fra en webservice hos SST. Denne webservice opererer dog ikke med CPR numre, da Da der ikke er nogen form for autentifikation på servicen, opereres der dog ikke med CPR-numre. Servicen samt andre nyttige services kan findes her:

http://autregwebservice.sst.dk/autregservice.asmx

Det er desuden muligt at anvende en webbaseret formula for at lave et opslag på:

http://sundhedsstyrelsen.dk/da/ds/opslagautreg.aspx

Autorisation identifikation

Autorisationidentifikation

SST definerer hvad en autorisation identifikation autorisationidentifikation er (herefter blot idautorisationsID) her på deres hjemmeside. Kort beskrevet består sådan et id at autorisationsID af 5 cifre, ; enten tal, konsonanter eller et Y. Der tillægges ikke nogen fortolkning heraf.

Som tidligere beskrevet er et autorisation id autorisationsID unikt, derfor kan det bruges på samme måde som en slags et CPR-nummer inden for sundhedsområdet. Yderligere anvendelser er beskrevet på tidligere linkede side.

Adgang til servicen

SAES er tilgængelig på alle NSP-installationer. Servicen er udstillet som en DGWS service. Alle kald til service servicen logges.

Servicens endpoint er: http://<nsp-host>:8080/stamdata-authorization-lookup-ws/service/AuthorizationService

Whitelistning

Servicen er underlagt whitelistningbegrænsningwhitelistningsbegrænsning. Denne whitelistning er baseret på CVR nummeret-nummer, der er indeholdt i anvendte det medsendte id-kort. Der skal anmodes om whitelistning hos NSP operatøren gennem en supporthenvendelse på nspop.dk.

Sikkerhedsniveau

Servicen kræver id-kort af niveau 3, dvs. id-kort udstillet med et VOCES eller FOCES certifikat.

Replikering og importering

Datagrundlaget for autorisationer på NSP bliver opdateret dagligt. På grund af denne frekvens vil ændringer i autorisationsregisteret foretaget mod SST ikke være at finde på NSP lige med det samme. Derudover vil der også være en kort forsinkelse efter modtagelse af en ny udgave af register registeret indtil ændringerne kan hentes ud via servicen. Grunden til dette er at data skal replikeres centralt fra ud til alle NSP-installationer.

Der er ikke nogen garanti for hvor aktuel aktuelt datagrundlaget er.

Testdata 

Servicen er ligeledes installeret på de eksterne testmiljøer. Herpå er servicen offentlig tilgængelig og underlagt samme adgangskrav som i produktion, dog i testføderationen. Adgang til testmiljøer er beskrevet her på nspop.dk.

Servicens datagrundlag er baseret på data specifik generet til testmiljøerne. En beskrivelse af testdata findes her på nspop.dk. Specielt kan alle autorisationer på testmiljøet findes her: på denne side på nspop.dk.

Eksempelkode

Tilhørende eksempelkode kan findes på http://svn.nspop.dk/public/guides/latest, specielt under modulet saes.

Der findes kun en én SOAP-operation på servicens snitflade. WSDL til snitfladen findes på https://wsdl.nspop.dk/stamdata-authorization-lookup-ws/service/AuthorizationService?wsdl eller sammen med koden på https://svn.nspop.dk/public/components/sdm/latest/code/nsp/authorization-lookup-ws/src/main/webapp/WEB-INF/wsdl/ .

En forespørgelse ser således ud – dele af SOAP headeren samt namespaces er undladt:

Code Block
languagexml
titlerequest
<TODO/><?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:medcom="http://www.medcom.dk/dgws/2006/04/dgws-1.0.xsd" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" id="Envelope">
  <soapenv:Header>
    <wsse:Security>
      ...
    </wsse:Security>
    <medcom:Header>
      ...
    </medcom:Header>
  </soapenv:Header>
  <soapenv:Body>
    <AuthorizationRequestStructure xmlns="http://nsi.dk/-/stamdata/3.0">
      <cpr>1111111118</cpr>
    </AuthorizationRequestStructure>
  </soapenv:Body>
</soapenv:Envelope>

Et svar kunne se således ud – dele af SOAP Header samt namespaces er undladt:

<TODO/>
Code Block
languagexml
<?xml version="1.0" encoding="UTF-8"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
  <S:Header>
    <ns5:Security xmlns="urn:oasis:names:tc:SAML:2.0:assertion">
       ...
    </ns5:Security>
    <ns3:Header xmlns:ns3="http://www.medcom.dk/dgws/2006/04/dgws-1.0.xsd">
      ...
    <ns3:FlowStatus>flow_finalized_succesfully</ns3:FlowStatus>
    </ns3:Header>
  </S:Header>
  <S:Body>
    <ns6:AuthorizationResponseStructure xmlns:ns6="http://nsi.dk/-/stamdata/3.0">
      <ns6:cpr>1111111118</ns6:cpr>
      <ns6:firstName>Helle</ns6:firstName>
      <ns6:lastName>Bonde</ns6:lastName>
      <ns6:authorization>
        <ns6:authorizationCode>12345</ns6:authorizationCode>
        <ns6:educationCode>7170</ns6:educationCode>
        <ns6:educationName>Læge</ns6:educationName>
      </ns6:authorization>
    </ns6:AuthorizationResponseStructure>
  </S:Body>
</S:Envelope>

Eksempel klient

I følgende repository ligger desuden et eksempel på kald til servicen: https://svn.nspop.dk/public/guides/latest/ Specielt er filen AuthorizationRequestExample.Java af interesse. Koden heri indeholder en del kommentarer, der beskriver kaldsforløbet.

Koden udfører et kald mod Test2-testmiljøet med CPR-nummeret 1111111118. Dette CPR-nummer findes på testmiljøerne, hvorfor et ikke-tomt svar returneres. Svaret stemmer overens med ovenstående beskrevne svar.