Versions Compared

Key

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


Children Display
styleh2
sorttitle

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 Service Consumer.

Læsevejledning

Dokumentet henvender sig primært til udviklere, der skal i gang med at anvende Seal.Java som Service Consumer.

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 Service Consumer.

Overblik over funktionalitet

Der findes følgende funktionalitet når Seal.Java anvendes som Service Consumer:

...

Eksempler på requests

 DGWS System IDCard

Eksempel på opbygning af kald til STS:

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


// --------------------------------------------------------------------
// 2. Build ID Card
// --------------------------------------------------------------------
SystemIDCard selfSignedSystemIdCard = sosiFactory.createNewSystemIDCard(...);


// --------------------------------------------------------------------
// 3. Build STS request
// --------------------------------------------------------------------
SecurityTokenRequest securityTokenRequest = sosiFactory.createNewSecurityTokenRequest();
securityTokenRequest.setIDCard(selfSignedSystemIdCard);

Document doc = securityTokenRequest.serialize2DOMDocument();

Eksempel på fortolkning af svar fra STS:

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



eHDSI

Eksempel på opbygning af kald til STS:

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


// --------------------------------------------------------------------
// 2. Build SAML Assertion
// --------------------------------------------------------------------

// Build Dkncp Boostrap SAML Assertion
DkncpBootstrapSamlAssertionBuilder assertionBuilder= factory.createDkncpBootstrapSamlAssertionBuilder(vault, issuer);

// Set values for the SAML Assertion
assertionBuilder.setIssuer("http://sosi");
assertionBuilder.setAudienceRestriction("https://fmk");
.
.

// Sign and validate Dkncp Bootstrap SAML Assertion
DkncpBootstrapSamlAssertion assertion = assertionBuilder.build();
assertion.validateSchema();
assertion.validateSignatureAndTrust(vault);


// --------------------------------------------------------------------
// 3. Build STS request
// --------------------------------------------------------------------

// Build Dkncp Bootstrap request
DkncpBootstrapSamlAssertionToEhdsiIdwsXuaEmployeeIdentityTokenRequestDOMBuilder requestBuilder = factory.createDkncpBootstrapSamlAssertionToEhdsiIdwsXuaEmployeeIdentityTokenRequestDOMBuilder();
requestBuilder.setAudience("https://sosi");
requestBuilder.setSigningVault(holderOfKeyVault);
requestBuilder.setDkncpBootstrapToken(assertion);

// Build and sign the final STS request
requestBuilder.build()

Eksempel på fortolkning af svar fra STS:

...

collapsetrue

...