Versions Compared

Key

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

...

Seal.NET indeholder en række IEndPointBehavior-klasser som kan benyttes af WCF service references.

DgwsMessageHeader

Den Gode Webservice specificerer en ekstra headertype, som DgwsMessageHeader implementerer.

...

            reply.Headers.Add(DgwsHeader(header));

Objekter

Følgende figurer illustrerer de klasser der indgår Seal.Net inddelt i grupper:


Klienter


Seal2SalmStsClient koverterer en SealAssertion til en Saml2Assertion enten via direkte kald til sts eller via SOSI Gateway.

Kort


SealCard indpakker svaret fra en STS (assertion) og giver mulighed for benytte data i fremtidige kald. SealCard er deprecated og brugen af IdCards (nederst) er derfor at foretrække.
DgwsHeader indpakker tilsvarende Medcom-header data

Nye kort er bleven tilføjet som er IdCards. IdCard er en abstract klasse så man bruger enten et SystemIdCard eller UserIdCard. System eller UseridCard bruges hhv. for at representere et system eller en bruger.

MessageHeaders


SealCardMessageHeader benyttes til at udstille et SealCard som en WCF MessageHeader
DgwsMessageHeader udstiller tilsvarende et DgwsHeader som en WCF MeassageHeader.

Endpointbehaviors

Disse behaviors findes under namespace 'dk.nsi.seal'.


SealSigningEndpointBehavior tilpasser request XML header med manglende attributter og underskriver request v.h.a. et associeret certifikat i clientCredentialsder gives til dens constructor. Yderligere valideres underskriften af response.
SealEndpointBehavior implementerer DGWS.

Factories


SosiFactory kan generere nye IdCards.
OioSamlFactory kan generere nye Requests. Normalt laver man en DOM builder som genererer selve XML'en og bagefter en ModelBuilder for at lave selve Requesten. Requesten kan så blive sendt ved hjælp af SealUtilities SignIn funktion.

DomBuilders


Dombuilders er et hierarki, som bliver brugt til at generere XML kode. Til venstre er der 3 klasser der håndterer bygning af selve assertions, mens det højre klasse hierarki bliver brugt til at generere selve Soap beskeden uden Assertion.

Requests


Requests er selve modeller over XML'en. De har diverse convenience methods til at hente informationer direkte ud fra XML'en.

Vaults

Vi har implementeret et generelt vault system som bliver brugt til at gemme certifikater i. GenericCredentialVault bruger en standart .Net CertificateStore til at gemme certifikater i. Der kan laves nye CredentialVaults som kan bruges i SosiFactory og andre steder i Seal.Net ved at nedarve fra ICredentialVault.

Federation

Federations bliver brugt når man skal validere certfikatet fra den service man snakker med. SosiFederation neders vil validere servicens certifikat op mod OCES2 root certifikatet for at sikre, at servicen er authoriseret. SosiTestFederation vil validere op mod OCES2 test root certifikat. Hvis ingen Federation bliver brugt, skal root certifikatet af den pågældende services certifikat (eller selve certifikatet) ligge i den brugte CredentialVault.

Hjælpefunktioner


Indeholder forskellige funktioner f.eks. til at signere og validere en signatur. Derudover kan man sende requests fra OioSamlFactory afsted uden brug af clienter.

...