Web Services: Implementierung der Business-Logik

Man wird die Definition der selbst erstellten SOAP-Header-Klasse am Anfang beider Web Services entdecken. Jeder Web Service muss seine eigene SOAP-Header-Klasse definieren, daher werden die polymorphen Authenticate()-Methoden in der WSUtil-Klasse benötigt.

Außerdem gibt es hier eine öffentliche Eigenschaft, die als Instanz der SOAP-Header-Klasse implementiert ist. Diese Eigenschaft wird auf die entsprechenden Werte des SOAP-Headers gesetzt, der von Nutzern des Web Service übergeben wird, wenn sie eine Web-Methode aufrufen. Um diese Verknüpfung zu erstellen, muss die Web-Methode über eine entsprechende Signatur verfügen:

Der SoapHeader-Attribut-Konstruktor übernimmt einen Parameter (in diesem Fall „BookSecurityCtx“) und muss mit dem Namen der innerhalb der Web Service-Klasse selbst definierten Eigenschaft übereinstimmen. Wenn die Web-Methode diesen SOAP-Header empfängt, setzt sie automatisch die Klassen-Eigenschaft auf die Werte des SOAP-Headers und erlaubt so den Zugriff auf die Daten. Der Parameter Required teilt den Nutzern des Web Service mit, dass dieser SOAP-Header unbedingt erforderlich ist, da sonst der Web Service nicht funktioniert.

Wenn man sich den gesamten Code anschaut, wird man feststellen, dass anstelle einer Duplizierung des Authentifizierungs-Codes in jeder Web-Methode einfach die Sicherheitskontext-Variable an die Authenticate()-Methode übergeben wird, die den eigentlichen Authentifizierungs-Prozess ausführt.

Der Web Service BookWS stellt zwei zusätzliche Methoden bereit, die nicht den Anforderungen entsprungen sind: GetBooksByIds und GetAvailabilityDs. Dies sind Hilfsmethoden, die zur Unterstützung der Benutzer der Web Services dienen. GetBooksByIds gibt eine Liste von Büchern aus, die auf einer Array-Liste der Primärschlüssel Book ID beruht. GetAvailabilityDs gibt ein DataSet aus, das alle möglichen Verfügbarkeitsoptionen für ein bestimmtes Buch enthält.

Wenn man ein wenig vorausschauend konzipiert, kann man normalerweise leicht feststellen, welche Hilfsmethoden von einem Client benötigt werden. Die Notwendigkeit dieser Methoden wird noch deutlicher werden, wenn Toms Anwendung mit Johns Web Services verbunden wird.

Page: 1 2 3 4 5

ZDNet.de Redaktion

Recent Posts

CopyRhadamantys greift weltweit Unternehmen an

Ausgeklügelte Phishing-Kampagne verwendet eine weiterentwickelte Version der Rhadamanthys-Stealer-Malware.

7 Tagen ago

Facebook Marketplace: EU verhängt Geldbuße von fast 800 Millionen Euro gegen Meta

Die EU-Kommission kritisiert die Verknüpfung von Facebook und dem hauseigenen Online-Kleinanzeigendienst. Sie sieht darin einen…

7 Tagen ago

Umfrage: Angestellte in Deutschland unterschätzen NIS-2-Richtlinie

Fast zwei Drittel halten jedoch eine Umsetzung aller Vorgaben von NIS 2 bis Jahresende für…

1 Woche ago

Kostenloser Dekryptor für ShrinkLocker

Mit dem Dekryptor von Bitdefender können Opfer von Attacken mit der Shrinklocker-Ransomware Dateien wiederherstellen.

1 Woche ago

Malwarebytes warnt vor Betrugsmaschen beim Weihnachtseinkauf

In der Vorweihnachtszeit ist vor allem Malvertising auf dem Vormarsch. Cyberkriminelle locken Nutzer über schädliche…

1 Woche ago

Bedrohungsindex: Deutliche Zunahme von Infostealern im Oktober

Dazu trägt unter der Infostealer Lumma-Stealer bei. Hierzulande dominiert der Infostealer Formbook die Malware-Landschaft.

1 Woche ago