STARs sikkerhedsmodel



Introduktion

Denne side beskriver den sikkerhedsmodel, der er anvendes på STARs servicesnitflader. I STARs servicekatalog findes både SOAP-webservices og REST-services. Grundlæggende anvendes samme sikkerhedsmodel i begge tilfælde, hvor der primært er syntaks til forskel.

For alle services gælder, at de udstilles via HTTPS og skal kaldes med et klientcertifikat, som skal være et funktionscertifikat (FOCES). Derudover skal der medsendes metadata, som angiver, hvilken myndighed der kaldes på vegne af, samt hvem aftager agerer som databehandler for. Derudover skal angives hvilken bruger / medarbejder / applikationsproces (ved batch-processeringer) der foretager handlingen, uanset om det er en læse eller skriveoperation, for at dette kan logges. For SOAP-webservices medsendes metadata som soap headers og for REST-services medsendes som http headers.

Se også generelt om sikkerhed her: Sikkerhed

Metadata

Sikkerhedsmodellens metadata består af 3 dele (kun 2 for SOAP):

  • ActiveOrganisation (SOAP + REST)

  • RequestUserMetadata (SOAP + REST)

  • CivilRegistrationIdentifier (REST)

Undtaget fra disse er offentlige webservices, der kan udstilles uden sikkerhed.

ActiveOrganisation

ActiveOrganisation anvendes til tjek af den grundlæggende sikkerhed: Må denne databehandler behandle data for denne myndighed.



Feltnavn

Type

Detaljer

Forekomst

Beskrivelse

Feltnavn

Type

Detaljer

Forekomst

Beskrivelse

ActiveOrganisationHeader

ActiveOrganisationHeaderType



1

ActiveOrganisationHeader benyttes til angive hvilken myndighed kalderen udgiver (impersonate) sig for at være overfor DFDG.

    OrganisationTypeIdentifier

OrganisationTypeIdentifierType

Base: Integer



1

Identificerer den type af organisation, som kaldet er foretaget på vegne af. Dette er en kodeliste, dog angives værdi som en integer af historiske årsager.

    OrganisationCode

String



1

Koden som identificerer organisationen. Det kan være jobcenternummer, et CVR nummer, en a-kassekode, en kommunekode, afdelingsnummer etc.

RequestUserMetadata

RequestUserMetadata anvendes primært til logning, så der sikres sporbarhed i forhold til, hvem det er, der anvender services, se elementerne i detaljer nedenfor. Elementet anvendes dog også til tjek af anden aktørs adgang til borger, tjek i forbindelse med gæsteadgang samt til adgangshåndtering når STARs systemer agerer på vegne af a-kasser og jobcentre som fx i forbindelse med sagsbehandlerlogin på Jobnet.



Feltnavn

Type

Detaljer

Forekomst

Beskrivelse

Feltnavn

Type

Detaljer

Forekomst

Beskrivelse

RequestUserMetadataHeader

RequestUserMetadataType



1

RequestUserMetadataHeader benyttes til at angive den kaldende myndighed overfor DFDG samt information om den kaldende bruger.

    RequestUserStructure

RequestUserStructureType



1

Struktur der indeholder beskrivelse af brugeren

        UserFullName

UserFullNameType

Base: String

Length: 1-140

1

Brugers fulde navn, ved systemkald angives systemets og jobbets navn her.

Der skal så vidt muligt oplyses konkret navn på medarbejder, når der er tale om Webservice kald foranlediget af sagsbehandleres læsning eller opdatering af oplysninger i DFDG eller STARs øvrige systemer. Alternativt en éntydig brugeridentifikation, der muliggør, at der kan findes fra logs i STARs it-systemer til log entries i aftagernes it-systemer. 

Det bør undgås at angive brugers fulde navn uden mellemrum mellem fornavn, mellemnavn og efternavn.

        RequestUserTypeIdentifier

RequestUserTypeIdentifierType

Base: Integer



1

Kodeliste med brugertyperne:

  1. Citizen - Borger, f.eks. i selvbetjeningsløsninger

  2. CaseWorker - Sagsbehandler (fysisk person)

  3. System - En systemproces, som f.eks. et batchjob, eller noget andet automatiseret, herunder en robot, der ikke kan henledes til en brugerhandling.

  4. CompanyEmployee  - fx raskmelding foretaget af en medarbejder i en virksomhed (via NemRefusion)

        UserIdentifier

UserIdentifierType

Base: String

Length: 1-255

1

Unik identifikation af brugeren, f.eks. en GUID, et medarbejder ID, system ID, bruger ID, certifikat ID, cpr-nummer, email (hvis den er unik) o.l.

Afhængigt af RequestUserTypeIdentifier udfyldes feltet med:

  1. Borgers CPR nummer eller et andet unikt ID, der identificerer borgeren

  2. Sagsbehandler ID, der kan spores tilbage til brugeren, kan være en e-mail, et medarbejder id, eller lignende

  3. System ID, unik identifikation af den proces eller batchjob der foretog handlingen.

        UserEmail

EmailAddressIdentifierType

String (E-mail)

Length: 2-256

Pattern: ([^>\(\)\[\]\\,;:@\s]{0,191}@[^>\(\)\[\]\\,;:@\s]{1,64})

0-1

Hvis der angives e-mail: Brugerens e-mail adresse skal angives, når der er tale om Webservice kald foranlediget af sagsbehandleres læsning eller opdatering af oplysninger.

Elementet kan undlades ved system-til-system kald.

Der må ikke angives en tom streng / tom mailadresse, når elementet medtages.

    RequestOrganisationStructure

RequestOrganisationStructureType



1

Information om den organisation, som brugeren, der har foretaget kaldet, tilhører.

        OrganisationTypeIdentifier

OrganisationTypeIdentifierType

Base: Integer



1

Kodeliste. Identificerer den type af organisation, som brugeren hører til. Dette er en kodeliste, dog angives værdien som en integer af historiske årsager.

        OrganisationCode

String



1

Koden som identificerer organisationen. Det kan være et jobcenternummer, CVR nummer, en a-kassekode eller en kommunekode.

    RegistrationDateTime

DateTime



1

Registreringstidspunkt i kaldende system

: Det er af hensyn til den borgervendte visning i selvbetjeningsløsninger dog vigtigt, at CaseWorker i Body'en er angivet med sagsbehandlers navn.

Fx bør følgende undgås (af hensyn til WSRM-dannelse, hvor brugers navn ofte er opdelt i særskilte elementer til fornavn og efternavn):

  • fornavn+mellemnavn+efternavn+kommunenavn+kommune

  • fornavn_mellemnavn_efternavn_kommunenavn_kommune

  • fornavn+mellemnavn+efternavn+Sagsbehandler

CivilRegistrationIdentifier

For REST-services gælder, at cprnr. skal angives som http header på samme måde som ActiveOrganisation og RequestUserMetadata vha af en http header, der hedder x-civilRegistrationIdentifier. Nedenfor er vist eksempel på de 3 http headers ved kald af en REST-service. Denne header skal udelades på ikke-borgercentriske serviceoperationer. 



Name

Value

Name

Value

x-activeOrganisation

{"organisationType":5,"OrganisationCode":"1"}

x-requestUserMetadata

{"RequestUserStructure":{"UserFullName": "FullName","RequestUserType": 1,"UserIdentifier": "test","UserEmail": "test@star.dk" },"RequestOrganisationStructure":{"OrganisationType":5,"OrganisationCode": "1"},"RegistrationDateTime": "2012-04-23T18:25:43.511Z"}

x-civilRegistrationIdentifier

1234567890



Bemærk at værdien for hver af headerne ikke må indeholde linjeskift. Http headers er per definition single line.

Fejlhåndtering

Når der kaldes, tjekkes indholdet af felterne og rettighederne i forhold til kalder. Dette kan resultere i nedenstående fejl, som skal håndteres på tværs af alle kald mod Stars services.

STAR.foundation fejlkoder

Fejlkode

Fejlbesked

 

1

Person does not exist for given cpr number.

 

2

StartDate should be before EndDate

 

1010

Unknown cpr

 

1012

Logon failed

 

1013

User has insufficient permissions to access this webservice

 

1014

The submitted message is not valid

 

1100

An error has occurred

 

1101

Client certificate missing from request

 

2001

Invalid CodeList name

 

2002

Invalid CodeList value

 

2003

Use of expired CodeList value not allowed

 

4413

The authoritytype of the requestheader is invalid

 

4575

You are not authorized to execute the operation

 

8173

OrganisationType is invalid according to the organisationTypeIdentifierCodeList.

 

8174

UserType is invalid according to the requestUserTypeIdentifierCodeList.

 

8232

The Soap request message is missing its required Soap header: ActiveOrganisationHeader

 

8233

The Soap request message is missing its required Soap header: RequestUserMetadataHeader

 

8234

Could not deserialize the Soap header: ActiveOrganisationHeader

 

8235

Could not deserialize the Soap header: RequestUserMetadataHeader

 

Fejlhåndtering specifikt for REST

Ved fejl på REST-services returneres nedenstående datastruktur. Her vil man kunne se, hvilken fejl, der er sket og detaljer om fejlen under details:

{ "errorCode": 1014, "errorMessage": "The submitted message is not valid", "details":"{\"\":[\"The field civilRegistrationIdentifier must match the regular expression \'((((0[1-9]|1[0-9]|2[0-9]|3[0-1])(01|03|05|07|08|10|12))|((0[1-9]|1[0-9]|2[0-9]|30)(04|06|09|11))|((0[1-9]|1[0-9]|2[0-9])(02)))[0-9]{6})|0000000000\'.\"]}", "correlationId": "d0d006d6-d626-4106-90a2-2d9e94eb1a1f" }

Http Status koder

Følgende HTTP-statuskoder anvendes på REST-services:

HTTP Statuskode

Anvendelse

HTTP Statuskode

Anvendelse

200

Anvendes til alle kald der går succesfuldt igennem

400

Anvendes ved invalidt input

401

Anvendes ved autorisationsfejl

500

Anvendes ved generelle applikationsfejl

Flere fejlkoder

De samlede fejlkoder for en given forretningsapplikation (fx "kontaktforloeb") findes på wiki: Under Fysisk arkitektur - Forretningsservices findes hver forretningsapplikation og lige under den et link til alle kodelister. For igen at bruge kontaktforloeb som eksempel, så er linket Kontakforloeb.Codelists. En af disse kodelister er ErrorCodes - hvor alle fejl som kastes af forretningsapplikationens services er oplistede.  

Udfyldelse af OrganisationTypeIdentifier og OrganisationCode felterne

Følgende beskriver, hvorledes sammenhængen er mellem organisationstypen og organisationskoden, derudover gennemgås, hvorledes de forskellige aktører forventes at kalde.

OrganisationType
Identifier

Organisation

OrganisationCode
Beskrivelse 

Format

Eksempel

OrganisationType
Identifier

Organisation

OrganisationCode
Beskrivelse 

Format

Eksempel

1

Arbejdsformidlingen







2

A-kasse

A-kassekode

Integer - 2 cifre

15

Se Identifikator feltet i kodeliste: GetUnemploymentFundList

3

UdgaaetKommuner

Kommunekode

Integer - 3 cifre

101

4

Anden Aktør

CVR-nummer

Integer - 8 cifre

31299004

5

STAR

Afdelings-/systemnummer

0=Ikke specificeret (Udgår)
1=DFDG
2=LSS
3=Amportal
4=Jobnet
5=Jobbing
6=MitJobkompas
7=EØS
8=VITAS
9=Planner
10=JobAG
11=JobKon
12=Jobservice Danmark
13=Borger.dk
14=IOM (Input Output Management System)
15=JobSearch
16=Taxonomy
17=WikiUploader
18 = Ydelsesudstilling
19 = Eures
20 = Revi
21 = Borgerkommunikation
22 = PerformanceMonitor
23 = LogViewer
24 = EksterneData
25 = StarTools
26 = Kontaktforloeb
27 = Virksomhedsindsats
28 = VisiteringOgStatus
29 = Komposit
30 = EksternKommunikation
31 = Match
32 = Borgerindsats
33 = IAM
34 = Jobannonce WIDK
100 = Ukendt (bør udgå)

Integer




6

Driftsselskab

Jobcenterkode

Integer - 5 cifre

10100

Se kodeliste: GetJobCenterList

7

Kommune

Kommunekode

Integer

3 cifre

101

Se kodeliste: GetMunicipalityList

8

JobCenter

Jobcenterkode

Integer - 5 cifre

10100

Se kodeliste: GetJobCenterList

9

Beskæftigelsesregion







11

Uddannelsesinstitution

CVR-nummer

Integer - 8 cifre

32435465

12

Samarbejdspartner

CVR-nummer

Integer - 8 cifre

32435465

13

Sygehusregion

CVR-nummer

Integer - 8 cifre

32435465

14

Kriminalforsorgen

CVR-nummer

Integer - 8 cifre

32435465

15

Styrelsen for IT- og Læring

CVR-nummer

Integer - 8 cifre

32435465

16

Styrelsen for Videregående Uddannelser

CVR-nummer

Integer - 8 cifre

32435465

17

Fagforbund

CVR-nummer eller CPR-nummer 1)

Integer 8/
string 10

32435465 / 0101714321

18

Udbetaling Danmark (UDK)

CVR-nummer

Integer - 8 cifre

32435465

19

Udlændinge, Integrations- og Boligministeriet (UIBM)

CVR-nummer

Integer - 8 cifre

32435465

20

Privat jobbank eller vikarbureau

CVR-nummer eller CPR-nummer 1)

Integer 8/ string 10

32435465 / 0101714321

21

AUB (arb.givernes uddannelsesbidrag = borger.dk)

CVR-nummer

Integer - 8 cifre

12345678

22

Revisor

CVR-nummer

Integer - 8 cifre

12345678

23

Ministerie

CVR-nummer

Integer - 8 cifre

12345678

24

Virksomhed

CVR-nummer

Integer - 8 cifre

12345678

25

Klientsystem

ClientSystemTypeIdentifier

Integer

4

Bemærk at der ikke er validering på at indberetninger med en given OrganisationCode indberetter jf. ovenstående formater.

 1) Hvis der kaldes ind fra systemet, forventes RequestUserType sat til 3 - System og OrganisationCode er et CVR nummer. Derimod forventes kald fra borgervendt selvbetjeningsløsning at komme med RequestUserType 1 - Citizen og UserIdentifier: CPR-nummer.

Kommunalt Jobcenter sagsbehandlingssystem - KSS

Dette omhandler systemer som:

  • KMD Momentum (Opera og Workbase)

  • Schultz FASIT

  • Andre jobcentersystemer

Der anvendes (mindst) ét FOCES certifikat pr. system. Metadata udfyldes ud fra følgende:

Feltnavn

Indhold

Feltnavn

Indhold

ActiveOrganisationHeader

OrganisationTypeIdentifier = 8

OrganisationCode = Jobcenterkode / 10100

RequestUserMetadataHeader

Hvis jobcentermedarbejder:

  • OrganisationTypeIdentifier = 8

  • OrganisationCode = Jobcenterkode / 10100

Hvis Kommunalmedarbejder:

  •  OrganisationTypeIdentifier = 7

  •  OrganisationCode = Kommunekode / 751

Hvis anden aktør medarbejder:

  • OrganisationTypeIdentifier = 4

  • OrganisationCode = CVR nummer / 32435465

Hvis der skal laves sagsbehandling på en borger, der ikke ”ejes” af pågældende myndighed, skal myndigheden forinden overtage borgeren. Myndighedstilknytningen udledes via borgerens adresse, men den er selvstændig og kan ændres. Borgeren kan til enhver tid kun have én myndighedstilknytning.

Resource planning system / planner system

Der skal kaldes på vegne af den myndighed som man agerer på vegne af. Hvis der indrapporteres selvbooking skal RequestUserMetadata indikere borgerdata

Feltnavn

Indhold

Feltnavn

Indhold

ActiveOrganisationHeader

OrganisationTypeIdentifier = 8

OrganisationCode = Jobcenterkode / 10100

RequestUserMetadataHeader

Hvis jobcentermedarbejder:

  • OrganisationTypeIdentifier = 8

  • OrganisationCode = Jobcenterkode / 10100

Hvis selvbetjeningsløsning, borgers selvbooking:

  • UserFullName = <borger navn>

  • RequestUserTypeIdentifiern = 1 (citizen)

  • UserIdentifier = <borger CPR>

  • OrganisationTypeIdentifier = 8

  • OrganisationCode = Kommunekode / 10100

Kommunal selvbetjeningsløsning

Feltnavn

Indhold

Feltnavn

Indhold

ActiveOrganisationHeader



- OrganisationTypeIdentifier

7 (kommune)

- OrganisationCode

<kommunekode>

RequestUserMetadataHeader



- RequestUserStructure



-- UserFullName

<citizen name>

-- RequestUserTypeIdentifier

1 (citizen)

-- UserIdentifier

<User CPR>

-- UserEmail

empty

- RequestOrganisationStructure



- OrganisationTypeIdentifier

7 (kommune)

- OrganisationCode

<kommunekode>

RegistrationDateTime

<datetime>

Ydelsescentersystemer

Dette dækker systemer som:

  • KMD-Aktiv og KOMBIT KY

  • KMD eDagpenge og KOMBIT KSD

  • Andre ydelsescentersystemer

Der anvendes (mindst) ét FOCES certifikat pr. system. Metadata udfyldes ud fra følgende:

Feltnavn

Indhold

Feltnavn

Indhold

ActiveOrganisationHeader

OrganisationTypeIdentifier = 7

OrganisationCode = Kommunekode / 751

RequestUserMetadataHeader

Hvis kommunal medarbejder:

  • OrganisationTypeIdentifier = 7

  • OrganisationCode = Kommunekode / 751



A-kasse-sagsbehandlingssystemer

Der anvendes mindst ét FOCES cerfikat pr. a-kasse, også selv om disse anvender samme databehandler/system. Denne model har Datatilsynet accepteret på et møde om a-kassernes overgang til FOCES.

Feltnavn

Indhold

Feltnavn

Indhold

ActiveOrganisationHeader

OrganisationTypeIdentifier = 2

OrganisationCode = A-kassekode / 15

RequestUserMetadataHeader

Hvis a-kasse medarbejder:

  • OrganisationTypeIdentifier = 2

  • OrganisationCode = A-kassekode / 15

A-kasse selvbetjeningsløsning

Feltnavn

Indhold

Feltnavn

Indhold

ActiveOrganisationHeader

 

- OrganisationTypeIdentifier

2 (a-kasse)

- OrganisationCode

<a-kassekode> (fx 15)

RequestUserMetadataHeader

 

- RequestUserStructure

 

-- UserFullName

<citizen name>

-- RequestUserTypeIdentifier

1 (citizen)

-- UserIdentifier

<User CPR>

-- UserEmail

empty

- RequestOrganisationStructure

 

-- OrganisationTypeIdentifier

2 (a-kasse)

-- OrganisationCode

<a-kassekode> (fx 15)

RegistrationDateTime

<datetime>

Anden aktør sagsbehandlingssystemer

Anden Aktør (uanset om denne varetager myndighedsopgaver) eller fx en kursusleverandør, der skal foretage læse- eller skriveoperationer i DFDG, opererer på vegne af en myndighed og det er derfor pågældende myndigheds ansvar, at Anden Aktør eller fx en kursusleverandør kun har den adgang, de må have. Anden aktør eller fx en kursusleverandør skal derfor anvende myndighedens certifikat. Vi kan via metadata se at det er AA eller fx en kursusleverandør, der har foretaget læsning eller registrering, se eksempel senere i dokumentet.

I forhold til at have adgang til borger så validerer DFDG på om der foreligger en henvisning til borgeren for CVR nummeret for AA eller fx en kursusleverandør.

Feltnavn

Indhold

Feltnavn

Indhold

ActiveOrganisationHeader

OrganisationTypeIdentifier = 8

OrganisationCode = Jobcenterkode (det henvisende jobcenter) / 10100 (i eksemplet Kbh jobcenter 10100)

RequestUserMetadataHeader

Hvis anden aktør eller fx en kursusleverandør medarbejder:

  • OrganisationTypeIdentifier = 4

  • OrganisationCode = CVR nummer på AA eller fx kursusleverandør / 32435465


Se også: ExternalOperatorRegistrationService (Version 6)

STAR's systemer

Jobnet for jobkonsulenter 

I forbindelse med at sagsbehandlerne kommer online på Jobnet via NemID erhverv, skal der i kommunikationen med DFDG stadig anvendes FOCES certifikatet. Medarbejderens myndighed fra NemID sendes som en del af metadata i dette tilfælde.

Feltnavn

Indhold

Feltnavn

Indhold

ActiveOrganisationHeader

OrganisationTypeIdentifier = 5

OrganisationCode = 11

RequestUserMetadataHeader

For sagsbehandlere kaldes med følgende, der dog kræver at Jobkon selv tjekker om sagsbehandler må få adgang til borger, enten via jobcentertilknytning, gæsteadgang eller henvisning.

Hvis jobcenter sagsbehandler:

  • OrganisationTypeIdentifier = 8

  • OrganisationCode = Jobcenterkode

  • RequestUserTypeIdentifier = 2

  • UserIdentifier = Certifikat RID

Hvis anden aktør sagsbehandler:

  • OrganisationTypeIdentifier = 4

  • OrganisationCode = CVR number

  • RequestUserTypeIdentifier = 2

  • UserIdentifier = Certifikat RID

Hvis a-kasse sagsbehandler:

  • OrganisationTypeIdentifier = 2

  • OrganisationCode = a-kasse nummer

  • RequestUserTypeIdentifier = 2

  • UserIdentifier = Certifikat RID

Jobnet

Jobnet er et STAR system som fortrinsvis anvendes af borgerne. Jobnet bruger uafhængigt af borgers kommunetilknytning samme FOCES certifikat, og kalder med følgende:

Feltnavn

Indhold

Feltnavn

Indhold

ActiveOrganisationHeader

OrganisationTypeIdentifier = 5

OrganisationCode = 4

RequestUserMetadataHeader

Hvis borger:

  • OrganisationTypeIdentifier = 5 (* i mangel af en organisationkode for borgere)

  • OrganisationCode = 4

  • RequestUserTypeIdentifier = 1 

  • UserIdentifier = CPR eller CV-number

For sagsbehandlere kaldes med følgende, der dog kræver at Jobnet selv tjekker om sagsbehandler må få adgang til borger, enten via jobcentertilknytning, gæsteadgang eller henvisning.

Hvis jobcenter sagsbehandler:

  • OrganisationTypeIdentifier = 8

  • OrganisationCode = Jobcenterkode

  • RequestUserTypeIdentifier = 2

  • UserIdentifier = Certifikat RID

Hvis anden aktør sagsbehandler:

  • OrganisationTypeIdentifier = 4

  • OrganisationCode = CVR number

  • RequestUserTypeIdentifier = 2

  • UserIdentifier = Certifikat RID

Jobnet for arbejdsgivere 

Når JobAG gennem online snitflade eller WS snitflade agerer på vegne af anden myndighed eller virksomhed fremgår denne af RequestUserMetadata

Feltnavn

Indhold

Feltnavn

Indhold

ActiveOrganisationHeader

OrganisationTypeIdentifier = 5

OrganisationCode = 10 (JobAG)

RequestUserMetadataHeader

Der kaldes med følgende:

Hvis STAR support 

  • OrganisationTypeIdentifier = 5 (STAR)

  • OrganisationCode = 10

  • RequestUserTypeIdentifier = 2

  • UserIdentifier = Certifikat RID

Hvis virksomhed:

  • OrganisationTypeIdentifier = 24

  • OrganisationCode = CVR

  • RequestUserTypeIdentifier = 4 (virksomhedsmedarbejder)

  • UserIdentifier = Certifikat RID

VITAS

Når VITAS gennem online snitflade, batchjob eller WS snitflade agerer på vegne af anden myndighed eller virksomhed fremgår denne af RequestUserMetadata

Feltnavn

Indhold

Feltnavn

Indhold

ActiveOrganisationHeader

OrganisationTypeIdentifier = 5 (STAR)

OrganisationCode = 8 (VITAS)

RequestUserMetadataHeader

Der kaldes med følgende

Hvis jobcenter sagsbehandler (incl. virksomhedssupport)

  • OrganisationTypeIdentifier = 8 (JC)

  • OrganisationCode = Jobcenterkode

  • RequestUserTypeIdentifier = 2 (sagsbehandler)

  • UserIdentifier = Fra ADFS session, fx e-mail

Hvis STAR support (incl. jobcentersupport)

  • OrganisationTypeIdentifier = 5 (STAR)

  • OrganisationCode = 8

  • RequestUserTypeIdentifier = 2

  • UserIdentifier = Certifikat RID eller UUID

Hvis virksomhed:

  • OrganisationTypeIdentifier = 24

  • OrganisationCode = CVR

  • RequestUserTypeIdentifier = 4 (virksomhedsmedarbejder)

  • UserIdentifier = Certifikat RID eller UUID

Ved webservicekald viderestilles data fra webservicekaldet

Ved batchjobkald:

  • OrganisationTypeIdentifier = 5

  • OrganisationCode = 8

  • RequestUserTypeIdentifier = 3 (system)

  • UserIdentifier = batchjobnavn

Vitas - og anden aktør

Ved kald fra VITAS pva. Anden aktør mangler vi et "på vegne af - lag", hvorfor vi - for at kaldet sikkerhedsteknisk kan gennemføres - tillader at man ikke kan genkende at det er VITAS der er kaldt fra/igennem.

Metadata sættes derfor op som om der kaldes direkte til DFDGs services, ActiveOrganisation indikerer det jobcenter der ageres på vegne af, og RequestUserMetadata indikerer den organisation der udfører kaldet:

Feltnavn

Indhold

Feltnavn

Indhold

ActiveOrganisationHeader

OrganisationTypeIdentifier = 8

OrganisationCode = Jobcenterkode (det henvisende jobcenter) / 10100 (i eksemplet Kbh jobcenter 10100)

RequestUserMetadataHeader

Hvis anden aktør eller fx en kursusleverandør medarbejder:

  • OrganisationTypeIdentifier = 4

  • OrganisationCode = CVR nummer på AA eller fx kursusleverandør / 32435465

Certifikater og testmiljøer

STAR stiller testcertifikater til rådighed som giver adgang til at agere som en eller flere myndigheder på et eller flere testmiljøer.

Serviceaftagers forpligtigelser

Web service aftageren skal etablere og opretholde fornødne sikkerhedsmæssige tiltag til sikring af, at meddelelser, der udveksles via Webservices, ikke kommer til uvedkommendes kendskab, forvanskes eller går til grunde.

Det er web service aftagernes eget ansvar at sikre, at dennes IT-systemer er konfigureret og eventuelt tilrettet i nødvendigt omfang til at kunne få adgang til de i dette dokument beskrevne Web services.

Ligeledes er web service aftagernes ansvar at sikre, at der er knyttet forsvarlige sikkerhedsforanstaltninger til de applikationer og systemer, denne benytter for at kunne anvende de i dette dokument beskrevne Webservices.

Yderligere specifikation af de krav der stilles til webservice aftageren findes i tilslutningsaftalen. 

Følgende beskriver de forpligtelser serviceaftageren påtager sig i forbindelse med en hver form for brug af de i dette dokument beskrevne services.

Serviceaftageren forpligter sig til følgende:

  • Såfremt serviceaftageren tilgår webservices der kræver unik identifikation af hvilken medarbejder/sagsbehandler/bruger der har fortaget handlingen, skal aftager enten anvende en certifikatmodel, der understøtter dette eller specifikt anvende versioner af webservices, hvor der medsendes brugerid.

  • Serviceaftager skal i webservices, hvor det er beskrevet, at der skal medsendes navn på den sagsbehandler, der er ansvarlig eller den sagsbehandler, der foretager læsning eller registrering af oplysninger, som minimum oplyse medarbejdernes for- og efternavn i servicekaldet, dvs.

    • der skal oplyses konkret navn på medarbejder, når der er tale om ws-kald foranlediget af sagsbehandleres læsning eller opdatering af oplysninger DFDG eller STARs øvrige systemer - der må i sådanne tilfælde ikke oplyses fx "Unknown" eller et systemnavn som navn på medarbejderen

    • angivelse af kun systemnavn er alene tilstrækkeligt, hvis ws-kald til DFDG er foranlediget af batchjob i det aftagende system

  • Serviceaftageren er forpligtet til at logge de kvitteringer der returneres af servicen

  • Serviceaftageren forpligter sig til at logge alle SOAP faults inkl. fejl koden som en del af deres fejl log.

  • Serviceaftageren forpligter sig til, at reagere på de SOAP-falts som DFDG og STARs andre it-systemer returnerer ved forsøg på registrering i DFDG og STARs andre it-systemer

Krav til logging hos aftageren

Web service aftageren skal gennemføre en grundlæggende logging i forhold til kommunikationen med de i dette dokument beskrevne web services.

Web service aftageren skal opretholde en log med de kvitteringer der returneres til aftageren når serviceaftageren sender hændelser til de udstillede services.

Hvis der i kommunikationen opstår en fejl skal web service aftageren logge fejlen incl. allle fejl informationer der returneres fra servicen, samt den afsendte besked.

Web service aftageren skal som minimum også logge følgende indformationer:

  • BrugerID – Unik identifikation af brugeren

  • Den organisationstype brugeren repræsenterer f.eks. jobcenter eller a-kasse

  • Den organisationskode der er knyttet til den organisation brugeren repræsenterer

  • Timestamp

Hvis der indgår personoplysninger i applikationen skal logningen være i overensstemmelse med Bekendtgørelse nr 528 af 15/06/2000 - Bekendtgørelse om sikkerhedsforanstaltninger til beskyttelse af personoplysninger, som behandles for den offentlige forvaltning.

Se iøvrigt: Krav til logning i applikationer

Anvendelse af OrganisationType ved WSRM

Når der skal hentes beskeder over WSRM anvendes OrganisationType på følgende måde:

  • Jobcenter medarbejdere kalder med OrganisationType=8

  • Kommunale medarbejdere kalder med OrganisationType=7

  • A-kassen kalder med OrganisationType=2

SAML og medarbejdercertifikater

Der er stadig behov for at have et SAML login i forbindelse med de administrative systemer: AMP, JCP, JN Administration, LSS, JobKon med videre.

AMPs sikkerhedsmodul (baseret på MOCES/nemid erhverv) fortsætter med at fungerer. Brugerdatabasen indeholder kun brugere, der anvender SAML løsningen. Denne løsning er separat fra webservices FOCES sikkerhedsmodel og beskrives derfor ikke yderligere her.

 

Webservicebeskeder (WSB)

Denne del beskriver kort sikkerhedsmodellen for webservicebeskeder og de krav, der gælder for aftagere. For at kunne foretage kald til webservicebeskeder er der en række sikkerhedsforanstaltninger, der skal overholdes.

Sikkerhedsmodellen for webservicebeskeder er baseret på to primære elementer: klientsystem og roller. Eksterne aftagere skal kalde ind med et klientsystem certifikat. Derudover skal brugeren der logger ind have den nødvendige rolle, "WebserviceBeskedBruger," for at kunne få adgang til webservicefunktionerne.

Webservice for WSB

Webservicebeskedkald til services i EksternKommunikation kræver at det er et klientsystem, der foretager opkaldene. Dette indebærer, at certifikatet, der bruges til at foretage kaldene, skal være tilknyttet et klientsystem før der gives tilladelse til at foretage kald. Grunden til dette er at når et system bliver opsat, så bliver det oprettet med en specifik klientsystem kode, og det er denne kode bliver holdt op kalderen af servicen for at finde ud af hvilke systemer at brugeren har adgang til.

Webservicebeskeder i LSS

Før at brugeren kan få adgang til Landssupport Systemet (LSS) i forbindelse med at administrere webservicebeskeder og abonnementer, så er der nogle krav der skal opholdes. Certifikatet som brugeren er logget ind med skal være tilknyttet et klientsystem, da vi som nævnt tidligere, bruger klientsystem koden til at identificere systemet/systemerne som brugeren har adgang til.

Udover kravet ovenover, så kræver brugen af LSS yderligere, at du er tildelt en bestemt rolle for at kunne se og bruge funktionerne på systemet. Den relevante rolle, der kræves for adgang til webservicebeskeder, er "WebserviceBeskedBruger”. Uden denne rolle så bliver siderne der relaterer til webservicebeskeder ikke vist, og funktionaliteten kan ikke tilgås.