Page History
...
Dette dokument indeholder en vejledning til driften af SOSI-STS
Oversigt over snitflader og adgang
Følgende er en oversigt over STS snitflader og kravene til adgang til disse.
Begreber
Begreber
I følgende dokumentation anvendes en række begreber. Den følgende liste er en liste af disse samt forklaring.
| Begreb | Forklaring |
|---|---|
| Anvendersystem | Det IT-system som anvender en STS snitflade |
| Bruger | Den bruger som via et klient IT-system anvender STS |
| Trust | Hvem stoler vi på som signerende part på en indgående billet. |
| Modtager | Hvilke systemer kan anvende den billet der udstedes af STS. |
Oversigt over snitflader og adgang
Følgende er en oversigt over STS
...
snitflader.
De enkelte snitflader er beskrevet ved at definere, hvilke anvendersystemer, brugere samt modtager de er tiltænktDisse begreber benyttes i snitfladerne nedenfor.
| Snitflade | Anvendersystem | Bruger | Trust | Modtager |
|---|---|---|---|---|
| DGWS | ||||
/sts/services/SecurityTokenService /sts/services/NewSecurityTokenService | Alle som har netværksmæssig adgang | System eller medarbejder | Indgående id-kort skal være signeret af "brugeren selv". | Alle DGWS-services |
| Medarbejderomveksling | ||||
| /sts/services/Sosi2OIOSaml | Alle som har netværksmæssig adgang | Alle medarbejdere | Id-kort skal være signeret af STS (udstedt af /NewSecurityTokenService) | Modtager-system skal være konfigureret (i tabellen iboConfig). |
| /sts/services/OIOSaml2Sosi | Alle som har netværksmæssig adgang. Hele SOAP besked skal være signeret med et vilkårligt OCES2-certifikat. | Alle medarbejdere | OIOSaml assertion skal være signeret af trusted part (i test-new-nemLogin-idp.keystore). I praksis NemLog-In | Alle DGWS-services |
| /sts/services/BST2SOSI | Alle som har netværksmæssig adgang | Alle medarbejdere | Bootstrap token skal være signeret af trusted part (konfigureret i database tabellen sts_audconf.trustedIdpConfiguration). Lokal IdP, SEB eller NemLog-in | Alle DGWS-services |
| Borgeromveksling | ||||
| /sts/services/Bst2Idws | Offentlig nøgle for anvender-system skal være WL (i tabellen audienceConfiguration). Dele af SOAP besked skal være signeret med denne nøgle. | Alle borgere | Bootstrap token skal være signeret af trusted part (konfigureret i database tabellen sts_audconf.trustedIdpCitizenConfiguration). I praksis NemLog-In eller SEB | Modtager-system skal være konfigureret (i tabellen audienceConfiguration). |
| /sts/services/JWTIdws | Offentlig nøgle for anvender-system skal være WL (i tabellen audienceConfiguration). Dele af SOAP besked skal være signeret med denne nøgle. | Alle borgere | JWT skal være signeret af trusted part (i test-jwt-idp-trust.jks). kid skal pege på det rigtige alias i denne. Issuer skal være konfigureret i services.xml | Modtager-system skal være konfigureret (i tabellen audienceConfiguration). JWT suport skal være aktiveret (i tabellen audienceConfiguration) |
| /sts/services/JWT2OIOSaml | Offentlig nøgle for anvender-system skal være WL (i tabellen audienceConfiguration). Dele af SOAP besked skal være signeret med denne nøgle. | Alle borgere | JWT skal være signeret af trusted part (i test-jwt-idp-trust.jks). kid skal pege på det rigtige alias i denne. Issuer skal være konfigureret i services.xml | Modtager-system skal være konfigureret (i tabellen audienceConfiguration). JWT suport skal være aktiveret (i tabellen audienceConfiguration) |
Java keystores
Selve konfiguration i forhold til de enkelte snitflader er beskrevet nedenfor.
Java keystores
Der benyttes et antal java keystores i løsningen. Disse er typisk placerede i folderen /pack/sts Disse beskrives nedenfor.
...
Det gamle kan efterfølgende fjernes, når det ikke længere benyttes.
Konfiguration
...
I de følgende afsnit gennemgås konfigurationerne for de enkelte snitflader. De enkelte snitfladers opsætning beskrives og derudover beskrives en opskrift/checkliste i forhold til tilslutning af nye anvendere.
Konfiguration af DGWS
DGWS snitfladerne dækker de to omvekslingsservices i tabellen nedenfor. I forhold til opsætning og konfiguration er de to snitflader ens, hvorfor de behandles samlet i det følgende.
| Snitflade | Trust og konfiguration |
|---|---|
| DGWS | |
/sts/services/SecurityTokenService /sts/services/NewSecurityTokenService |
|
Trustmodellen for DGWS er baseret på, at anvenderen signerer det indgådende Idkort ved anvendelse af et certifikat udstedt af CA rodcertifikat i den fællesoffentlige føderation. Disse rodcertifikater vedligeholdes som en del af SEAL.JAVA biblioteket og skal derfor ikke konfigureres særskilt i STS.
Derudover indeholder STS databasen tabellen sts_audconf.trustedCvr, som indeholder de CVR numre, der er whitelistet i STS:
| Felt | Beskrivelse | Påkrævet |
|---|---|---|
| cvr | CVR nummre for af anvender. | Ja |
| endpoint | Den service, der whitelistes. | Ja |
Opsætning af nyt anvendersystem
Før at et nyt anvendersystem kan bruge DGWS snitfladerne skal det tilhørende CVR nummer whitelistes i STS.
Dette gøres ved indsættelse af CVR nummeret i STS databasen:
| Code Block | ||||
|---|---|---|---|---|
| ||||
USE sts_audconf;
insert into trustedCvr (cvr, endpoint) values ('46837428', 'STS'); |
Konfiguration af medarbejderomvekslinger
STS indeholder en række omvekslingssnitflader til brug for brugere af typen medarbejder.
Trustmodellen og opsætningen for de enkelte snitflader er opsummeret i nedenstående tabel og uddybet i de underliggende afsnit:
| Snitflade | Trust og opsætning |
|---|---|
| Medarbejderomveksling | |
| /sts/services/Sosi2OIOSaml |
|
| /sts/services/OIOSaml2Sosi | OIOSaml assertion skal være signeret af trusted part (i test-new-nemLogin-idp.keystore). I praksis NemLog-In |
| /sts/services/BST2SOSI | Bootstrap token skal være signeret af trusted part (konfigureret i database tabellen sts_audconf.trustedIdpConfiguration). Lokal IdP, SEB eller NemLog-in |
Opsætning af Sosi2OIOSaml
Den generelle konfiguration for denne service ligger i services.xml på bean iboRequestHandler og består af følgende:
| Property | Beskrivelse |
|---|---|
| validateEnvelopeSignature | Om envelope signaturen på requests skal |
Sosi2OIOSaml
Den generelle konfiguration for denne service ligger i services.xml på bean iboRequestHandler:
| Property | Beskrivelse |
|---|---|
| validateEnvelopeSignature | Om envelope signaturen på requests skal valideres |
| checkTargetCertificate | Om gyldigheden af certifikat svarende til publicKey (i nedenstående tabel) skal tjekkes før den benyttes |
| emptyAttributeValue | Den værdi Værdi, der skal bruges til at erstatte tomme attributter på den genererede OIO Saml Assertion |
Disse opsætninger er globale for alle anvendere.
Derudover vil der i forespørgsler til denne omvekslingssnitflade indgå et audience, der identificerer det tiltænkte modtagersystem.
De tilladte audience konfigureres i STS databasen i tabellen For hvert audience, skal følgende konfigureres i databasen i tabellen sts_audconf.iboConfig; disse er:
| Felt | Beskrivelse | Påkrævet |
|---|---|---|
| audience | identifikation af modtagersystemet som en URI, der skal være på normalform. | Ja |
| publicKey | den offentlige nøgle som anvendes til kryptering af den omvekslede token. Bemærk at indholdet er tilgivende overfor line-breaks og whitespaces, så der kan formateres valgfrit. | Ja |
| recipientURL | den URL hvor modtagersystemet kan nåes på. | Ja |
| includeBST | om ID-kort/bootstrap token skal inkluderes i den svarede assertion. (ja/nej) | Ja |
| deliveryNotOnOrAfterOffset | offset i tid fra omvekslingstidspunkt, der bruges til opsætning af gyldighed af udstede assertion. | Ja |
| notBeforeOffset | offset i tid fra omvekslingstidspunkt, der bruges til opsætning af gyldighed af udstede assertion. | Ja |
| notOnOrAfterOffset | offset i tid fra omvekslingstidspunkt, der bruges til opsætning af gyldighed af udstede assertion. | Ja |
| idCardMaxAgeMins | maksimal alder på id-kortet | Nej (default er 1440 min) |
Tilføjelse af nyt audience
Tilføjelse af ny anvender
Ovenstående tabel skal kun opdateres hvis servicen skal benyttes for et audience, der ikke allerede er konfigureret. I så fald, tilføjes en ny række i tabellen for det nye audience.
...