Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Navitabs
rootSeal.Java 3 - Leverancebeskrivelse
includeroottrue


Children Display
styleh2

Introduktion

Formål med dokumentet

Formålet med dette dokument er at give en detaljeret beskrivelse af dem konkrete funktionalitet, der udbydes af Seal.Java anvendelsesområdet Security Token Service.

Læsevejledning

Dokumentet henvender sig primært til udviklere, der skal i gang med at anvende Seal.Java til omvekslinger i en Security Token Service.

Dokumentet bygger i høj grad på den overordnede Seal.Java - Guide til udviklere, som giver et overblik over Seal.Java og leverer i denne sammenhæng et mere dybdegående teknisk beskrivelse af den funktionalitet der udbydes i Seal.Java når den anvendes af en Security Token Service.

Overblik over funktionalitet

Seal.Java understøtter følgende omvekslinger når den anvendes i en Security Token Service:

...

Funktion

...

eHDSI 

 Eksempler

  DGWS System ID kort

Eksempel når STS modtager et DGWS kald med et System ID kort:

Code Block
collapsetrue
// --------------------------------------------------------------------
// 1. Factory
// --------------------------------------------------------------------
SOSIFactory factory = new SOSIFactory(new EmptyCredentialVault(), new Properties());


// --------------------------------------------------------------------
// 2. Parse STS request
// --------------------------------------------------------------------
SecurityTokenRequest request = factory.deserializeSecurityTokenRequest(securityTokenRequestXml)


// --------------------------------------------------------------------
// 3. Get ID Card
// -------------------------------------------------------------------- 
IDCard idCard = request.getIDCard();

Eksempel på det svar STS sender efter at have modtaget et DGWS kald med et System ID kort:

Code Block
collapsetrue
// --------------------------------------------------------------------
// 1. Factory
// --------------------------------------------------------------------
SOSIFactory factory = new SOSIFactory(new EmptyCredentialVault(), new Properties());


// --------------------------------------------------------------------
// 2. Build signed ID Card
// --------------------------------------------------------------------
signedIdCard = factory.copyToVOCESSignedIdCard(idCard, ...);


// --------------------------------------------------------------------
// 3. Build STS response
// --------------------------------------------------------------------
SecurityTokenResponse response = factory.createNewSecurityTokenResponse(request);
response.setIDCard(signedIdCard);

Dkncp Boostrap token → eHDSI Identity Token

Eksempel når STS modtager et Dkncp Bootstrap token

Code Block
collapsetrue
// --------------------------------------------------------------------
// 1. Factory
// --------------------------------------------------------------------
EHDSIFactory factory = new EHDSIFactory();


// --------------------------------------------------------------------
// 2. Parse STS request
// --------------------------------------------------------------------

// Deserialize (parse) request:
DkncpBootstrapSamlAssertionToEhdsiIdwsXuaEmployeeIdentityTokenRequest request = factory.createDkncpBootstrapSamlAssertionToEhdsiIdwsXuaEmployeeIdentityTokenRequestModelBuilder().build(requestDocument);

// validate request
request.validateSignatureAndTrust(holderOfKey);
request.validateHolderOfKeyRelation();


// --------------------------------------------------------------------
// 3. Get SAML Assertion
// --------------------------------------------------------------------

// Get Dkncp Bootstrap Saml Assertion
DkncpBootstrapSamlAssertion assertion = request.getDkncpBootstrapSamlAssertion();

// The Dkncp Bootstrap Assertion can be schema validated after serialize/deserialize
assertion.validateSchema();
assertion.validateSignatureAndTrust(vocesVault);

Eksempel på det svar STS sender efter at have modtaget et Dkncp Bootstrap token:

...

collapsetrue

...