Page History
...
| Table of Contents |
|---|
Introduktion
Formål med dokumentet
Nærværende dokument henvender sig til nuværende og kommende brugere af STS (Secure Token Service).
Formålet med dokumentet er at give en forståelse af STS som produkt:
- Hvad er STS?
- Hvilke opgaver løser STS?
- Hvordan kommer man som anvender i gang med at bruge STS?
Derudover giver dokumentet et overblik over de af STS understøttede brugsscenarier med udgangspunkt i konkrete eksempler og med links til mere uddybende dokumentation af disse.
Læsevejledning og forudsætninger
Dokumentet henvender sig primært til IT arkitekter, udviklere og forretningskonsulenter med fokus på sikkerhedsinfrastrukturer og applikationssikkerhed.
Det forudsættes at læseren har en forståelse for grundlæggende koncepter og begreber indenfor applikationssikkerhed herunder certifikater (OCES).
Dokumentet vil løbende linke til ekstern dokumentation, hvor dette er relevant.
Hvad er STS?
STS er i dette dokument synonymt med en konkret service. Men STS kan også opfattes som et koncept: I denne sammenhæng står STS for Secure Token Server. Dette er et kendt begreb indenfor IT sikkerhedsarkitekturer og beskriver en service, hvis formål er udstedelse, validering og fornyelse/omveksling af sikkerhedsbilletter.
Ideen med en Secure Token Server er, at der opnåes en afkobling mellem serviceanvender og serviceudbyder som illustreret i figuren nedenfor.
| Gliffy Diagram | ||||||||
|---|---|---|---|---|---|---|---|---|
|
En serviceudbyder behøver således ikke at forholde sig til eller overhovedet at kende sine konkrete anvendere. Det, at en serviceanvender er i besiddelse af en sikkerhedsbillet signeret af en Secure Token Server, som serviceudbyderen stoler på (trust) er nok til, at serviceudbyderen kan være sikker på, at det er ok at svare på et servicekald.
STS på National Service Platform (NSP)
Der findes i dag en række forretningsservice på NSP. Disse services dækker forskellige formål - fra datadeling via Dokumentdelingsservice (DDS) til verifikation af behandlingsrelation via Behandlingsrelationsservice (BRS).
Selvom formålene for NSP services er forskellige, så har de en række fællestræk f.eks. i forhold til autentificering. Det betyder dog ikke at alle NSP services skal validere alle anvenderes certifikater og tilhørende information. Dette vil være et stort ansvar at fordele på så mange komponenter. Derfor er der en fælles komponent, som kan udstede adgangsgivende billetter, som kun kræver simpel verifikation. På NSP hedder servicen Security Token Service (STS).
Der er i skrivende stund to aktuelle sikkerhedsprotokoller i spil på NSP:
- Den gode webservice (DGWS): Adgang for systembrugere og adgang for medarbejdere (både med og uden autorsation)
- IDWS: Adgang for borgere (evt. med fuldmagt eller for forælder/værge)
I begge tilfælde skal der i kaldet til den konkrete NSP service forevises en sikkerhedsbillet udstedt af STS.
Anvendelse af STS på NSP
Inden en anvender kan kalde en NSP service skal denne dermed integrere med STS og identificere sig overfor denne med henblik på at få udstedt en passende sikkerhedsbillet. Anvenderes autentifikation overfor STS er baseret på OCES-certifikater.
Adgang til STS
Når en anvender skal i gang med at bruge STS på NSP skal følgende være på plads:
- TODO
...
Introduktion
Formål
Denne guide har som formål at give et overblik over STS.
...
| Service | Sikkerhedsniveau | Beskrivelse |
|---|---|---|
| Signering | ||
| /sts/services/NewSecurityTokenService | Niveau 3-4 | Udstedelse af STS-signeret id-kort. |
| /sts/services/SecurityTokenService | Niveau 3-4 | Legacy udgave af ovennævnte service (uden erstatning af NameId). Benyt NewSecurityTokenService hvis muligt |
| Medarbejder-omveksling | ||
| /sts/services/Sosi2OIOSaml | Niveau 4 | Ombytter STS-signeret id-kort til OIOSaml-token rettet mod et specifikt audience, f.eks. sundhed.dk. Bemærk at dette id-kort skal være udstedt af /sts/services/NewSecurityTokenService |
| /sts/services/OIOSaml2Sosi | Niveau 5 | Ombytter OIOSaml (nem-login) token til signeret id-kort. Token skal være signeret af troværdig tredjepart |
| /sts/services/JWT2OIOSaml | Niveau 5 | Ombytter JSON Web token til OIOSaml-token rettet mod et specifikt audience, f.eks. forløbsplaner.dk |
| Borger-omveksling | ||
| /sts/services/Bst2Idws | Niveau 5 | Ombytter OIOSaml bootstrap token til signeret identitytoken rettet mod et givet audience, f.eks. FMK. Token skal være signeret af troværdig tredjepart(nem-login) |
| /sts/services/JWT2Idws | Niveau 5 | Ombytter JSON Web token til signeret identity-token rettet mod et givet audience, f.eks. FMK. Token skal være signeret af troværdig tredjepart (pt. en OID connector) |
Læsevejledning og forudsætninger
En typisk anvender af STS, som kan drage nytte af dette dokument er karakteriseret ved eksempelvis at være leverandør af et lægepraksissystem eller leverandør af et fagsystem implementeret på et hospital, f.eks. et laboratoriesystem eller et medicineringssystem.
...
| Statens_Serum_Institut_VOCES.jks | CVR:46837428-UID:27910135 |
Medarbejdercertifikater
| Keystorefil | CVR-RID | CPR | Autorisationsnummer | Uddannelseskode |
|---|---|---|---|---|
| Brian_Larsen_Laege.jks | CVR:46837428-RID:11475415 | 1205691235 | NS365 | 7170 |
| Brian_Moeller_Laege.jks | CVR:46837428-RID:56771668 | 1103811325 | ||
| Karl_Hoffmann_Svendsen_Laege.jks | CVR:46837428-RID:34208599 | 0102732379 | NS362 | 7170 |
| Sonja_Bach_Laege.jks | CVR:46837428-RID:83701009 | 0309691444 | NS363 | 7170 |
| Sonja_Bach_Laege.jks | CVR:46837428-RID:83701009 | 0309691444 | NS364 | 5166 |
Øvrige certifikater
| Keystorefil | Beskrivelse |
|---|---|
| audience-certificate.jks | Indeholder privat nøgle svarende til det audience der er konfigureret med navnet //sundhed.dk - og kan derfor anvendes til dekryptering |
| test-trusted-IdP.jks | Indeholder privat nøgle for et certifikat som STS'en stoler på. Dermed er STS i stand til at veksle tokens signeret med denne private nøgle. |