Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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.

BegrebForklaring
AnvendersystemDet IT-system som anvender en STS snitflade
BrugerDen bruger som via et klient IT-system anvender STS
TrustHvem stoler vi på som signerende part på en indgående billet.
ModtagerHvilke 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.

SnitfladeAnvendersystemBrugerTrustModtager
DGWS

/sts/services/SecurityTokenService

/sts/services/NewSecurityTokenService

Alle som har netværksmæssig adgangSystem eller medarbejderIndgående id-kort skal være signeret af "brugeren selv".Alle DGWS-services
Medarbejderomveksling
/sts/services/Sosi2OIOSamlAlle som har netværksmæssig adgangAlle medarbejdereId-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/BST2SOSIAlle som har netværksmæssig adgangAlle 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.

SnitfladeTrust og konfiguration
DGWS

/sts/services/SecurityTokenService

/sts/services/NewSecurityTokenService

  • Indgående Idkort skal være signeret af anvendersystemet med certifikat.
  • Certifikatets (anvendersystemets) CVR nummer skal være whitelistet i STS

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:

FeltBeskrivelsePåkrævet
cvrCVR nummre for af anvender.Ja
endpointDen 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
languagesql
titleWhitelisting af CVR nummer
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:

SnitfladeTrust og opsætning
Medarbejderomveksling
/sts/services/Sosi2OIOSaml
  • Det indkommende Idkort skal være signeret af STS selv (udstedt af /NewSecurityTokenService)
/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:

PropertyBeskrivelse
validateEnvelopeSignatureOm envelope signaturen på requests skal

Sosi2OIOSaml

Den generelle konfiguration for denne service ligger i services.xml på bean iboRequestHandler:

PropertyBeskrivelse
validateEnvelopeSignatureOm envelope signaturen på requests skal valideres
checkTargetCertificateOm gyldigheden af certifikat svarende til publicKey (i nedenstående tabel) skal tjekkes før den benyttes
emptyAttributeValueDen 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:

FeltBeskrivelsePåkrævet
audienceidentifikation af modtagersystemet som en URI, der skal være på normalform.Ja
publicKeyden 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
recipientURLden URL hvor modtagersystemet kan nåes på.Ja
includeBSTom ID-kort/bootstrap token skal inkluderes i den svarede assertion. (ja/nej)Ja
deliveryNotOnOrAfterOffsetoffset i tid fra omvekslingstidspunkt, der bruges til opsætning af gyldighed af udstede assertion.Ja
notBeforeOffsetoffset i tid fra omvekslingstidspunkt, der bruges til opsætning af gyldighed af udstede assertion.Ja
notOnOrAfterOffsetoffset i tid fra omvekslingstidspunkt, der bruges til opsætning af gyldighed af udstede assertion.Ja
idCardMaxAgeMinsmaksimal alder på id-kortetNej (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.

...