Design og Arkitektur beskrivelse af Seal.Net til .net

4.6.2

Introduktion

At designe og implementere en service der overholder Den Gode

Webservice (DGWS), er ikke nødvendigvis en let opgave. Derfor er Seal.Nets formål at indpakke DGWS specifikke detaljer, og abstrahere alle typer fra XML til objektform, for på den måde, at gøre det lettere for udvikleren at overholde standarden.

Design

Seal.Netbygger på WCF og WIF. Disse er valgt, da de er supporteret af Microsoft, og indgår som standard i .Net Frameworket. I en WSDL der beskriver en snitflade til DGWS indgår skemaer der beskriver de specifikke DGWS klasser. Når der genereres en proxy til hhv. klient eller server, dannes disse klasser på typestærk form i den autogenererede proxy. Eksempler på genererede klasser er Security, Assertion og Header.

Dette Api er designet til at benytte disse klasser i videst mulig omfang.

Objekter

De indgående objekter i Seal.Netkan inddeles i følgende grupper:

Klienter

Indbefatter Seal2SamlStsClient og Saml2SealStsClient, som kan konvertere en SealAssertion til en SamlAssertion, og vice versa.

Kort

Indbefatter IDCard (SystemIDCard og UserIDCard) og DgwsHeader som benyttes til at indpakke data fra hendholdsvis Security Token Service (STS) og MedCom.

MessageHeaders

Indbefatter DgwsMessageHeader og IDCardMessageHeader, som kan konvertere henholdsvis DgwsHeader og IDCard til en WCF

MessageHeader

Endpointsbehaviors

Disse kan validere de mest basale DGWS-krav på udkomne og indgående beskeder. De er endvidere i stand til at udpakke fejl fra en service og lave dem til exceptions.

Hjælpefunktioner

Indbefatter SealUtilities, som indeholder forskellige funktioner, til

f.eks. signering og validering.

Factories

Indbefatter SOSIFactory og OIOSAMLFactory. SOSIFactory benyttes til generering af IDCards, mens OIOSAMLFactory benyttes til at generere Requests.

Vault

Indbefatter ICredentialVault samt GenericCredentialVault, som bruges til opbevaring og verificaring af system certifikater.

Federation

Indbefatter Federation samt SOSITestFederation og SOSIFederation, som implementationer til hhv. test og produktions miljøerne. Federation bruges til verificering af returnerede certifikater fra

STS’en.

  • No labels