Sichere Web Services unter J2EE

Größe: px
Ab Seite anzeigen:

Download "Sichere Web Services unter J2EE"

Transkript

1

2 Patrick Schmitt Sichere Web Services unter J2EE Absicherung von Web Services mit WS-Security January 12, 2004 Fachhochschule Trier Betreuung: Prof.Dr.-Ing.DamianWeber Dr. Bernd Kuhlmann, BGS AG, Mainz

3 Erklärung Hiermit erkläre ich, dass ich die nachfolgende Arbeit selbstständig und ohne fremde Hilfe angefertigt habe. Dabei wurden keine anderen Hilfsmittel, als die im beigefügten Verzeichnis angegeben, verwendet. Patrick Schmitt (927151)

4 In den vergangenen Jahren entwickelten sich Web Services von einem Megatrend hin zu einer in vielen Unternehmen produktiv eingesetzten Technologie. Waren die ersten Implementierungen wie bei allen neuen Technologien noch überschaubar, so erreichen aktuelle Projekte leicht den Umfang einiger Millionen Euro und sind damit durchaus als unternehmenskritisch einzustufen. Einhergehend mit der steigenden Bedeutung von Web Services wurde auch der Ruf nach äquivalenten Sicherheitsstandards laut. So äußerten laut einer Studie von Cap Gemini Ernst & Young [1] 60 Prozent der befragten IT-Direktoren Befürchtungen über entstehende Sicherheitslücken durch den Einsatz der neuen Technologie. Die daraus entstandenen Standards und Protokolle zur Absicherung von Web Services sollen im folgenden betrachtet werden, anschließend wird eine Implementierung vorgestellt, die es ermöglicht, Web Services dem WS-Security-Standard konform abzusichern.

5 Inhaltsverzeichnis 1 Web Services - eine kurze Einführung WassindWebServices? ArchitekturvonWebServices Vergleich zwischen Sun ONE und Microsoft.NET SunONE Microsoft.NET Fazit Vor-undNachteilevonWebServices Standards im Bereich Web Services XML-ExtensibleMarkupLanguage Status Merkmale SOAP - Simple Object Access Protocol Status Ziele Merkmale Implementierungen WSDL- WebServicesDescriptionLanguage Status Ziele ElementeinWSDL UDDI - Universal Description, Discovery and Integration Status Ziele Merkmale UDDI-API fürjava ÖffentlicheUDDI-Registries... 13

6 VIII Inhaltsverzeichnis 3 Sicherheitsprotokolle und Standards WebServiceSecurity Status Ziele MerkmalevonWS-Security Implementierungen XML-Signature Status Ziele Merkmale Implementierungen XML-Encryption Status Ziele Merkmale Implementierungen XKMS-XMLKeyManagmentSpecification Status Ziele Implementierungen SAML - Security and Assertion Markup Language Status Ziele Implementierungen Die Axis SOAP-Implementierung DasAxis-Projekt ArchitekturvonAxis AxisalsServer AxisalsClient InstallationundKonfigurationvonAxis Installation EntwickelneinesWebServicesmitAxis ErstelleneinesJava-Interfaces Erzeugen der WSDL-Beschreibung Erzeugung der Java-Klassen aus dem WSDL-Dokument EinfügenderProgrammlogik InstallationvonWebServicesunterAxis ErstelleneinesClients SicherheitslückenvonWebServices SicherheitslückendurchXML GroßeXML-Dokumente EntityExpansionAttacks DateireferenzierendeEntities... 36

7 Inhaltsverzeichnis IX Gegenmaßnahmen SicherheitslückendurchdenEinsatzvonSOAP Sicherheit der übertragenendaten BufferOverflows Command-Injection SOAP-Attachments Gegenmaßnahmen AllgemeineSicherheitsmaßnahmen Die WS-Security Implementierung MotivationzurImplementierung Anforderungen SignierungvonNachrichten VerschlüsselungvonNachrichten AnforderungenzumpraktischenEinsatz Entwurf Realisierung Packagede.trier.wsse.type Packagede.trier.wsse.dsig Packagede.trier.wsse.enc Packagede.trier.wsse.security TestenderBibliothek Betrachtungen zum praktischen Einsatz der Implementierung IntegrationinvorhandeneWebServices Performance und Netzlast durch den Einsatz von WS-Security Performance Netzlast Fazit und Ausblick Fazit Weiterentwicklung der Bibliothek in der Zukunft Klassendokumentation Packagede.trier.wsse.type BinarySecurityToken CipherData DataReference EmbeddedReference EncryptedData EncryptedKey EncryptionMethod KeyIdentifier Reference... 60

8 X Inhaltsverzeichnis ReferenceList SecurityHeader SecurityTokenReference SignatureElement TimeStamp UsernameToken X509IssuerSerial Packagede.trier.wsse.enc CertificateResolver DecryptElement EncryptElement XEncrypt XMLDecryptor XMLEncryptor DecryptionException EncryptionException Packagede.trier.wsse.dsig SignBodyElement VerifySignedBody XSignature SignatureException Packagede.trier.wsse.security WSSecurity Packagede.trier.wsse.util EncryptionUtil SignatureUtil Packagede.trier.wsse.samples SignatureHandler VerifyingHandler UML-Diagramme der Packages Beispiele SOAP-AufrufRequest/Respone SOAP-AufrufinnerhalbeinesHTTP-Request SOAP-Antwort innerhalb einer HTTP-Response AutomatischerzeugtesWSDL-Dokument SOAP-Aufruf unter Verwendung von WS-Security SOAP-Aufruf Digital Signierter SOAP-Aufruf und Verarbeitung durcheinenproxy Digital signierter und verschlüsselter SOAP-Aufruf undverarbeitungdurcheinenproxy Abkürzungen... 87

9 Inhaltsverzeichnis XI 13 Stichwortverzeichnis Literaturverzeichnis... 95

10

11 1 Web Services - eine kurze Einführung Dieser Abschnitt gibt eine Einführung in den Aufbau und die Grundlagen von Web Services. Dabei werden die Unterschiede und Vorteile gegenüber klassischen Middleware-Architekturen herausgestellt. Anschließend folgt ein kurzer Vergleich der beiden Ansätze Sun ONE und Microsoft.NET. 1.1 Was sind Web Services? Web Services sind allgemein gesprochen Client/Server-Applikationen, die ihre Dienste über ein Netzwerk anbieten, typischerweise das Internet, aber auch ein Intranet. Meint man jedoch Web Services, von denen seit einiger Zeit die Rede ist, so kann man einschränken: Web Services sind Server-Applikationen, die mit dem Client über das auf XML basierende SOAP-Protokoll 1 kommunizieren und dazu HTTP oder SMTP als Trägerprotokoll benutzen. Neu ist daran lediglich die Kommunikation über SOAP und HTTP bzw. SMTP. Die Funktionalität wurde früher schon durch klassische Middleware-Technologien wie CORBA und das dabei benutzte Protkoll IIOP erreicht. Vereinfacht gesprochen kommunizieren Web Services durch den Austausch von XML- Dokumenten über HTTP. 1.2 Architektur von Web Services Die Architektur von Web Services lässt sich mit den vorher erwähnten klassischen Middleware-Architekturen vergleichen. Insgesamt kann man die folgenden drei Rollen vergeben: Service Requester bzw. Client Der Client nutzt die Dienste, die ein Server anbietet. Im Falle von Web 1 Simple Object Access Protocoll

12 2 1 Web Services - eine kurze Einführung Services führt der Client entfernte Methodenaufrufe auf dem Server durch, ähnlich dem lange bekannten Konzept der RPC 2. Dabei wird SOAP als Kommunikationsprotokoll benutzt. Den aufzurufenden Web Service kann der Client aus der UDDI-Registry 3 bestimmen (Find). Die UDDI-Registry ist eine Art öffentliches Verzeichnis, bei dem Anbieter ihre Web Services registrieren können. Eine ausführlichere Erläuterung von UDDI erfolgt in Kapitel 2.4. Service Provider bzw. Server Der Server stellt die Dienste bereit und veröffentlicht eine standardisierte Beschreibung (Publish), wie diese aufzurufen sind. Das kann ein WSDL- Dokument 4 zum Download sein oder ein Eintrag in einer UDDI-Registry. WSDL-Dokumente beschreiben Web Services mit einer XML-Grammatik, mehr dazu folgt in Kapitel 2.3. Service Registry bzw. Registry Hier kann der Betreiber der Web Services veröffentlichen (Publish), welche Funktionalität die angebotenen Services bieten. Diese Einträge sind ebenfalls standardisiert und erfolgen mittels UDDI. Abb Ablauf der Nutzung eines Web Service 1.3 Vergleich zwischen Sun ONE und Microsoft.NET Dieser Abschnitt zieht einen kurzen Vergleich zwischen den beiden bedeutendsten Architekturen zur Realisierung von Web Services, Sun ONE und Mi- 2 Remote Procedure Calls 3 Universal Description, Discovery and Integration 4 Web Service Description Language

13 1.3 Vergleich zwischen Sun ONE und Microsoft.NET 3 crosoft.net. Am Ende soll eine kurzes Fazit die Vor- und Nachteile aufzeigen, jedoch ohne eine Bewertung der beiden Ansätze durchzuführen Sun ONE Der Ansatz von Sun basiert auf dem Einsatz von Enterprise Java Beans, die die Geschäftslogik implementieren. EJBs kommunizieren mit der oder den Datenbanken, die Datenpräsentation auf der Clientseite geschieht mit JSPs oder Servlets. Sie erzeugen das vom Browser darstellbare HTML. Im Falle von Web Services kommuniziert der Client über SOAP mit dem Server, die SOAP-Anfragen werden dann auf Serverseite von einem Router-Servlet entgegengenommen. Das Router-Servlet greift seinerseits wieder auf die EJBs zu. Dabei ist die Programmiersprache in der der Client entwickelt wurde beliebig. Eine weitere Möglichkeit besteht im Einsatz von CORBA/RMI mit IIOP als Kommunikationsprotokoll zwischen Client und Server, damit kann der Client direkt auf die EJB-Umgebung zugreifen, siehe dazu Abb.1.2. Diese zweischichtige Architektur ermöglicht die klare Trennung zwischen präsentierenden (JSP, Servlets) und geschäftslogischen Funktionen (EJBs). Die EJB-Umgebung ist zudem absolut plattformunabhängig. Zur Entwicklung Java-basierter Lösungen steht eine Vielzahl eigenständiger Abb Die Sun ONE-Architektur

14 4 1 Web Services - eine kurze Einführung Produkte zur Verfügung. Von Sun gibt es die Forte Entwicklungsumgebung, andere IDEs sind NetBeans, VisualJ oder Eclipse. Als Application-Server sind der Sun ONE Application Server, JBoss, Jonas und andere auf dem Markt. Diese Produkte sind eigenständige Lösungen, die nicht aufeinander abgestimmt sind und nur mit Anpassungen zusammenarbeiten. Auch wenn Sun mit der ONE Initiative eine Komplettlösung ähnlich.net bieten will, merkt man doch recht schnell, daß hier, vorerst, nur vorhandene Produkte zu einem Paket zusammengefasst wurden. Während der Entwicklung muss ein Web Service kompiliert, von Hand installiert und anschließend ein Client zum Testen codiert werden. Zwar erleichtern einige Tools (wie beispielsweise in der Axis-Bibliothek) die Entwicklung, diese sind aber nicht in die Entwicklungsumgebung integriert und müssen von Hand aufgerufen oder eingebunden werden Microsoft.NET Die.NET-Architektur ähnelt stark derjenigen von Sun ONE. Der einzige Unterschied besteht darin, dass die Möglichkeit mit CORBA/RMI über IIOP zu kommunizieren, entfällt. Stattdessen kommt (D)COM als Protokoll zum Einsatz, mit dem der Client direkt auf die.net-komponenten im Kern des Gesamtsystems zugreifen kann, siehe Abb.1.3. Diese.NET-Komponenten werden mit einer beliebigen, von.net unterstützten Programmiersprache entwickelt, ebenso der Client. Auf den ersten Blick kann Java dann durch.net mit VisualBasic kommunizieren, was vorher so nicht möglich war. Dies stimmt sogar, allerdings ist dieser Ansatz nur sprachunabhängig und nicht plattformneutral. Der Microsoft-Ansatz erfordert immer eine Microsoft-Plattform, vielleicht wird diese Notwendigkeit in Zukunft durch das Mono-Projekt und.gnu unter Linux entfallen. Als Entwicklungsumgebung steht zur Zeit für.net nur das VisualStudio.NET von Microsoft zur Verfügung, andere Produkte sind noch keine vollwertigen IDEs, sondern eher Quellcodeeditoren. Dazu, quasi als Paket, bietet Microsoft den Internet Information Server als Application Server an, der zusammen mit dem Internet Explorer als Test- und Ablaufumgebung dient. Die Unterstützung des Internet Information Servers aus VisualStudio heraus ist weit fortgeschritten, so ist es möglich, mit nur einem Knopfdruck einen entwickelten Web Service zu installieren, starten und zu testen Fazit Beide Ansätze bieten Vor- und Nachteile. Der wichtigste Vorteil des Javabasierten Ansatzes ist natürlich die Plattformneutralität, da Java auf allen gängigen Betriebssystemen verfügbar ist. Demgegenüber steht die bislang schlechte Unterstützung durch die erhältlichen Entwicklungsumgebungen, hier besteht noch einiger Nachholbedarf durch die Hersteller. Momentan muss an dieser Stelle noch zuviel Handarbeit geleistet werden.

15 1.4 Vor- und Nachteile von Web Services 5 Abb Die Microsoft.NET-Architektur Microsoft bietet mit der.net-plattform, der Visual-Studio-Entwicklungsumgebung und dem Internet Information Server ein sehr mächtiges System, mit dem Web Services schnell entwickelt, getestet und installiert werden können. Ein Nachteil ist die Bindung an eine komplette Umgebung dieses Anbieters, da sonst die Stärken des aufeinander abgestimmten Systems nicht mehr zum Tragen kommen. 1.4 Vor- und Nachteile von Web Services Der Vorteil von Web Services gegenüber klassischen Middleware-Techniken liegt in der Plattformneutralität. Ein Client muss nicht wissen, in welcher Sprache ein Service programmiert ist oder unter welchem Betriebssystem er läuft. Er benötigt lediglich die Information aus der Registry, also ein WSDL- Dokument oder einen Eintrag aus einer UDDI-Registry, um zu wissen, wie der Service zu nutzen ist. Ein weiterer positiver Aspekt (und gleichzeitiger Schwachpunkt) ist die Verwendung von HTTP als Trägerprotokoll. Andere TCP/IP-basierte Middleware- Technologien kommunizieren über einen priviligierten Port; dieser muss an einer Firewall explizit freigeschaltet werden. Bei der Nutzung von HTTP ist dies nicht notwendig, da der verwendete Port 80 für HTTP beinahe immer

16 6 1 Web Services - eine kurze Einführung geöffnet ist. Allerdings wird dadurch auch die Sicherheitsfunktion der Firewall untergraben, weil der Datenverkehr jetzt ungefiltert passieren kann. Ein weiterer Minuspunkt ist die ungesicherte Kommunikation zwischen Client und Server, alle Daten werden im Klartext übertragen und können so abgehört oder manipuliert werden. Hier müssen zusätzliche Sicherheitsmaßnahmen Berücksichtigung finden.

17 2 Standards im Bereich Web Services In diesem Kapitel werden Standards beschrieben, die im Umfeld von Web Services von Bedeutung sind. Diese Standards, XML, SOAP, WSDL und UDDI, sind die Basis für die Implementierung und den Betrieb von Web Services. 2.1 XML - Extensible Markup Language Status Extensible Markup Language (XML) 1.0 (Second Edition) W3C Recommendation 6. Oktober 2000 Aktuelle Version: Merkmale Da XML im Vergleich zu den anderen vorgestellten Standards schon auf weite Anwendungsfelder zurückblickt und nicht speziell für den Einsatz innerhalb von Web Services entwickelt wurde, wird hier nicht näher auf die Eigenheiten von XML eingegangen. Das wesentliche Merkmal von XML liegt in der Bereitstellung eines einheitlichen Datenformates zum Austausch strukturierter Informationen. Diese Eigenschaft wird sehr gut beim Einsatz von XML innerhalb von Web Services sichtbar, hier werden Daten zwischen verschiedensten Plattformen ausgetauscht und einheitlich verarbeitet. Für weitere Informationen zu XML sei auf die Webseite des W3C verwiesen, Empfehlenswerte Bücher zum Thema XML sind [2] und [3].

18 8 2 Standards im Bereich Web Services 2.2 SOAP - Simple Object Access Protocol Status Simple Object Access Protocol (SOAP) 1.2 W3C Note 8. Mai 2000 Aktuelle Version: Ziele Die SOAP-Spezifikation beschreibt ein einfaches Protokoll zum Austausch strukturierter Informationen in einer dezentralen, verteilten Umgebung mit XML. Dabei macht sie keine Aussagen über das Programmiermodell oder Implementierungsdetails der Anwendung, es wird lediglich ein Mechanismus entworfen, um Daten innerhalb verteilter Anwendungen auszutauschen. So kann SOAP mit einer Vielzahl anderer Protokolle kombiniert werden (Binding), im aktuellen Standard ist vorerst nur die Bindung an HTTP spezifiziert. Oberstes Design-Ziel war die Einfachheit und Erweiterbarkeit des Protokolls; so wurde bei der SOAP-Spezifikation auf einige Merkmale traditioneller Messaging- oder Distributed-Object-Systeme wie CORBA oder RMI bewusst verzichtet. Aufgrund der Zustandslosigkeit von Web Services fehlen unter anderem folgende vier Kernfunktionalitäten, die von Middleware- Frameworks bereitgestellt werden: Object-by-Reference Verteilte Garbage Collection Activation Messaging, bzw. Message-Queues Weiterhin werden in der Spezifikation keine Mechanismen zur Verschlüsselung, Authentifizierung und Datenintegrität beschrieben, diese Aufgaben müssen durch zusätzliche Maßnahmen abgedeckt werden Merkmale Die SOAP-Spezifikation besteht aus 3 Teilen: SOAP Envelope Der SOAP-Envelope (Umschlag) definiert eine Struktur, mit der definiert werden kann, was in der SOAP-Nachricht enthalten ist, wer der oder die Empfänger sind und welche Teile des Inhaltes vorgeschrieben oder optional sind. SOAP Encoding Rules Die SOAP Encoding Rules beschreiben einen Mechanismus zur Serialisierung von Anwendungsdaten, die dann innerhalb des erzeugten XML- Dokuments ausgetauscht werden können.

19 2.2 SOAP - Simple Object Access Protocol 9 SOAP RPC - SOAP Remote Procedure Calls SOAP-RPC beschreibt eine Konvention zur Repräsentierung von RPC- Aufrufen und RPC-Rückgaben in XML. Damit ist es möglich, mit Hilfe von SOAP entfernte Prozeduren aufzurufen, also verteilte Anwendungen zu implementieren. Der Prozeduraufruf über SOAP hat den Vorteil, keine Änderung an bestehenden Netzwerkkonfigurationen zu benötigen, da er über das übliche HTTP-Protokoll an Port 80 durchgeführt wird. Eine gültige SOAP-Nachricht besteht aus einem SOAP-Envelope, einem optionalen SOAP-Header und einem SOAP-Body. Zusätzlich können an die Nachricht noch Attachments in Form von Dateien angefügt werden. SOAP-Envelope Der Envelope repräsentiert das Wurzelelement einer SOAP-Nachricht. Er enthält die Namespace-Deklarationen für SOAP xmlns:soap-env= und eventuell zusätzliche Attribute, welche durch eine Namespace-Deklaration qualifiziert werden müssen. SOAP-Header Der Header stellt das erste Folgeelement des SOAP Envelope dar. Hiermit wird der Empfänger einer Nachricht, der sogenannte SOAP-actor, festgelegt. Es können auch sogenannte Intermediaries (Zwischenempfänger) angegeben werden. Diese empfangen die Nachricht und leiten sie an den Empfänger oder an den nächsten Intermediary weiter, wobei Teile der Nachricht geändert werden können. Dies wird wichtig im Zusammenhang mit der Verschlüsselung oder Signatur der Nachricht, da dann berücksichtigt werden muss, welche Teile der verschlüsselten Nachricht ein Intermediary lesen oder ändern können soll. Eventuell ist auch ein erneuter Signaturvorgang erforderlich. Weiter wird im Header durch das Attribut mustunderstand festgelegt, ob der Empfänger das Header-Element verabeiten muss oder ob es genügt, nur die Body- Elemente zu verarbeiten. Können die Header-Einträge nicht verarbeitet werden, muss die SOAP-Engine einen SOAP-Fehler (SOAP-Fault) erzeugen, der dann als Rückgabe innerhalb der Response im SOAP-Body steht. Anhand dieses SOAP-Faults kann der Absender dann ermitteln, weshalb sein SOAP- Aufruf nicht erfolgreich bearbeitet werden konnte. SOAP-Body Das Body-Element ist ein child-element des SOAP Envelope. Ist ein SOAP- Header-Element vorhanden, muss der SOAP-Body auf dieses folgen, ist kein Header-Element vorhanden, folgt es unmittelbar auf das SOAP-Envelope- Element. Der Body enthält die eigentlichen Nutzdaten, die an den Empfänger

20 10 2 Standards im Bereich Web Services übertragen werden, dies können RPC-Aufrufe oder Fehlermeldungen sein. Alle Einträge im Body sind durch Namespace-Deklarationen auszuzeichnen. Für SOAP-Fehlermeldungen gibt es das SOAP Fault-Element mit den 4 Subelementen faultcode, faultstring, faultactor und detail. Andere Subelemente sind zugelassen, müssen dann aber qualifiziert werden. Abb Aufbau einer SOAP-Nachricht Implementierungen Apache Axis Apache SOAP Microsoft.NET Framework Sun Web Services Development Kit ksoap Einen SOAP-Request und SOAP-Response über HTTP als Trägerprotokoll zeigt Beispiel 11.1.

21 2.3 WSDL - Web Services Description Language WSDL - Web Services Description Language Status Web Services Description Language (WSDL) 1.1 W3C Note 15. März 2001 Aktuelle Version: Ziele WSDL definiert eine XML-Grammatik zur Beschreibung von Web Services. Dazu beschreibt ein WSDL-Dokument einen Service als Endpunkt, an den Nachrichten versendet werden. Ein WSDL-Dokument kann über eine URL oder UDDI abgerufen werden, um diese Beschreibung dem Nutzer eines Services zur Verfügung zu stellen. Anhand dieses Dokumentes kann der Service dann mit den entsprechenden Parametern aufgerufen werden. In der aktuellen Version werden als Protokolle zum Nachrichtenaustausch SOAP, HTTP GET/POST und MIME unterstützt Elemente in WSDL service-element Die Adresse des Web Service, bei Nutzung von HTTP als Trägerprotokoll beispielsweise Die Adresse eines Web Service bildet zusammen mit den nachfolgenden Elementen des WSDL- Dokumentes den sogenannten service. types-element Dieses Element dient zur Definition der Datentypen, die in den Nachrichten ausgetauscht werden, sowie der zugehörigen Rückgabewerte. Um die Plattformunabhängigkeit und Interoperabilität zu gewährleisten, benutzt WSDL dazu XSD-Schemas. Es können aber auch neue, eigene Typsysteme verwendet werden. message-element Beschreibt die Ein- und Ausgabeparameter. operation-element Legt die vom Web Service unterstützten Methodensignaturen fest. porttype-element Definiert die Zuordnung der einzelnen öffentlich angebotenen Methoden zu den Methoden der Implementierungsklasse, die den Web Service realisiert. binding Beschreibt das konkrete Trägerprotokoll und Datenformat über das kommuniziert wird. Dies wird als Binding bezeichnet. port -Element Definiert den Endpunkt der Kommunikation als Kombination aus Binding und Netzwerkadresse. Ein automatisch aus einem Java-Interface generiertes WSDL-Dokument zeigt Beispiel 11.2.

22 12 2 Standards im Bereich Web Services 2.4 UDDI - Universal Description, Discovery and Integration Status Universal Description, Discovery and Integration Aktuelle Version 3.0: Ziele UDDI definiert ein webbasiertes, verteiltes System zur Registrierung von Web Services. Ziel ist es, Firmen die Möglichkeit zu geben, die von ihnen angebotenen Web Services in einer Art öffentlichem Verzeichnis, den UDDI-Registries, einzutragen. Diese Einträge können dann nach verschiedenen Kriterien durchsucht werden, um den passenden Anbieter eines Web Service zu finden. Die Beschreibung eines Web Service erfolgt dabei durch eine XML-Datei. In der neuesten Version 3 der Spezifikation wird zusätzlich die Sicherheit der eingetragenen Informationen berücksichtigt. Es wird damit in Zukunft möglich sein, UDDI-Einträge digital zu signieren, um die Integrität der Informationen sicherzustellen. So kann beispielsweise verhindert werden, dass die Adresse eines Web Services unerlaubt verändert wird und damit SOAP-Anfragen an die Adresse eines falschen Servers gesendet werden Merkmale Die UDDI-Spezifikation unterteilt sich in vier Hauptbestandteile: Datenstruktur Mit ihr wird beschrieben, welche Datentypen innerhalb von UDDI gespeichert werden sollen. Ähnlich wie WSDL wird auch UDDI mit Hilfe von XML-Schemas beschrieben. API-Spezifikation Diese Spezifikation beschreibt, wie man als Programmierer auf eine UDDI- Registry zugreifen kann. Dabei gibt es zwei Gruppen von Funktionen. Die sogenannten publishing functions dienen dem Eintragen und Updaten eines Dienstes in der Registry. Zum Auslesen dieser Informationen benötigt man die inquiry functions, mit denen Lesezugriffe auf die UDDI-Registries durchgeführt werden können. Die API ist programmiersprachenunabhängig und muss in die jeweils benötigte Programmiersprache übersetzt werden. Replikationsspezifikation In dieser Spezifikation wird festgelegt, wie zwischen verschiedenen Anbietern die Daten unterschiedlicher UDDI-Registries dupliziert werden können.

23 2.4 UDDI - Universal Description, Discovery and Integration 13 Spezifikation für Registry-Anbieter Diese Spezifikation ist für Unternehmen gedacht, die selber eine UDDI- Registry aufbauen möchten. Sie umfasst Details über einzuhaltende Sicherheitsmaßnahmen, damit ein standardisierter Zugriff auf alle Registries erfolgen kann. Die Beschreibung eines Web Services innerhalb einer Registry wird in vier Teile untergliedert: Business Information Hierunter versteht man allgemeine Informationen über den Anbieter des Web Service, also Firmenname, Branche oder spezielle Produktinformationen, die im Zusammenhang zum Web Service stehen. Service Information Mit diesem Element können mehrere Web Services zu einem Prozess zusammengefasst werden, damit dieser durch den Aufruf aller Services abgearbeitet werden kann. Binding Information Hiermit werden technische Aspekte des Web Service beschrieben, beispielsweise unter welcher Adresse er zu finden ist, wie das Routing zum Service verläuft oder welche Maßnahmen zum Load Balancing zu beachten sind. Specification Information Hier werden die zum Aufruf des Service wichtigen Informationen eingetragen. Dazu gehören die Parameter, die übergeben werden müssen, das Format der Antwort oder zusätzliche Informationen zur Sicherheit UDDI-API für Java UDDI4J von IBM Java-API zum Zugriff auf UDDI-Registries, kostenlos unter Öffentliche UDDI-Registries IBM Microsoft SAP HP

24

25 3 Sicherheitsprotokolle und Standards Dieser Abschnitt beschreibt die wichtigsten Protokolle und Standards im Zusammenhang mit der Absicherung von Web Services. Es werden die jeweils wichtigsten Bestandteile kurz beschrieben, um die Möglichkeiten des entsprechenden Protokolls darzustellen. 3.1 Web Service Security Status Specification: Web Services Security (WS-Security) Working Draft 17, 27. August 2003 Aktuelle Version: Vorgeschlagen von IBM, Microsoft, Verisign Addendum: Web Services Security Addendum, 18. August Ziele Ziel des WS-Security-Standards ist der sichere Austausch von SOAP-Nachrichten. Dazu erweitert die Spezifikation vorhandene Sicherheitsprotokolle wie XML-Signature und XML-Encryption, um den Austausch von Sicherheitsinformationen, die Nachrichtenintegrität und die Vertraulichkeit von Nachrichten sicherzustellen. In der Spezifikation wird ausdrücklichdaraufhingewiesen, daß allein der Einsatz von WS-Security noch keine sicheren Web Services gewährleistet: (...) WS-Security is a building block that can be used in conjunction with other Web Service extensions and higher-level applicationspecific protocols to accommodate a wide variety of security models and encryption technologies. [6]

26 16 3 Sicherheitsprotokolle und Standards Um das Ziel sicherer Web Services zu erreichen, entwirft die Spezifikation kein eigenes Protokoll, sondern ein flexibel erweiterbares Framework, daß auf vorhandenen Sicherheitsstandards aufsetzt und die Integration zukünftiger Protokolle ermöglicht. WS-Security gewährleistet dabei eine Ende-zu-Ende- Sicherheit der ausgetauschten XML-Dokumente. Es erweitert die in der SOAP- Spezifikation festgelegten Header-Elemente um neue Elemente, die es ermöglichen, Sicherheitsinformationen in das XML-Dokument zu integrieren. Spätere Spezifikationen wie WS-Policy (gerade verabschiedet), WS-Trust oder WS- Privacy werden auf WS-Security aufbauen, um dieses Framework zu erweitern. Abb Die WS-Security Roadmap Merkmale von WS-Security Security-Element Die Spezifikation führt ein Security-Element im Header der SOAP-Nachricht ein, dass zum Anfügen von Sicherheitsinformationen für einen bestimmten Empfänger oder Intermediary in die SOAP-Nachricht dient. Für jeden Intermediary/Empfänger kann dabei ein eigenes Security-Element eingefügt werden. So können unterschiedliche Sicherheitsanforderungen an verschiedene Empfänger adressiert werden. Ein Intermadiary kann neue Security-Elemente anfügen oder bestehende Einträge ändern. Der Security-Header stellt also eine Beschreibung dar, welche Schritte der Absender durchgeführt hat, um die Nachricht zu signieren und/oder zu verschlüsseln. UsernameToken-Element Innerhalb des Security-Elementes wird das UsernameToken-Element verwendet. Es dient zur Übermittlung eines Benutzernamens mit optionalem Passwort.

27 3.2 XML-Signature 17 BinarySecurityToken-Element Zur Übermittlung binärer (z.b. X.509 Zertifikate, Kerberos Tickets) Security Token dient das BinarySecurityToken-Element. Es definiert die Art der Information, sowie die Binärkodierung (z.b. Base64Binary), die durchgeführt wurde, um das Token in das XML-Dokument einzubinden. SecurityTokenReference-Element Für Tokens, die nicht in der SOAP-Nachricht enthalten sind, sondern extern über eine URI referenziert werden, ist das SecurityTokenReference- Element vorgesehen. Es kann beispielsweise dazu verwendet werden, über eine URI einen Schlüssel zu referenzieren, der zur Verifizierung einer Signatur benötigt wird. TimeStamp-Element Das TimeStamp-Element ermöglicht die Angabe des Erstellungs- und/oder Verfallszeitpunktes für ein XML-Dokument. Optional können auch Delays angegeben werden, die die Dauer der Übertragung oder Verarbeitung des Dokumentes beschreiben. Andere Elemente werden aus den Standards XML-Encryption/XML-Signature übernommen, ihre Beschreibung erfolgt in den beiden nächsten Abschnitten. Ein Beispiel zur Benutzung von WS-Security innerhalb eines SOAP-Aufrufes findet sich unter Beispiel Implementierungen Microsoft Web Service Development Kit für.net 3.2 XML-Signature Status XML-Signature Syntax and Processing W3C Recommendation 12 Februar 2002 Aktuelle Version: Ziele Die XML-Signature-Spezifikation beschreibt eine Syntax und dazugehörige Verarbeitungsregeln zur Erzeugung und Verarbeitung von digitalen Signaturen innerhalb von XML-Dokumenten. Diese Signaturen können auf jede Art digitaler Daten angewendet werden, vor allem natürlich XML-Dokumente. Es können sowohl Daten innerhalb eines XML-Dokumentes signiert werden (Enveloped bzw. enveloping-signature), als auch externe Daten (detached- Signature). XML-Signature legt dabei die Bindung eines Schlüssels an die

Web Services mit Java

Web Services mit Java Web Services mit Java Neuentwicklung und Refactoring in der Praxis Torsten Langner new technology Markt+Technik Verlag Inhaltsverzeichnis Vorwort 13 Warum ausgerechnet dieses Buch? 13 An wen richtet sich

Mehr

Hauptseminar Internetdienste Prof. F. Schweiggert Sommersemester 2004 Universität Ulm. Web Services. Boto Bako

Hauptseminar Internetdienste Prof. F. Schweiggert Sommersemester 2004 Universität Ulm. Web Services. Boto Bako Hauptseminar Internetdienste Prof. F. Schweiggert Sommersemester 2004 Universität Ulm Web Services Boto Bako Inhaltsverzeichnis 1.Einführung und Motivation...3 2.Verwendete Standards...4 2.1.SOAP...5 2.2.WSDL...6

Mehr

SOA, Webservices und SOAP für Schnelleinsteiger

SOA, Webservices und SOAP für Schnelleinsteiger SOA, Webservices und SOAP für Schnelleinsteiger (C)opyright 2005 by Jochen Vajda Inhalt Einführung I. Was ist SOA? II. Webservices, SOAP und WSDL SOAP mit PHP5 I. Benötigte Komponenten II. Client ohne

Mehr

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com Web Services Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 1 Web Services Einführung Definition, Eigenschaften, Anwendungen... JAX-RPC Überblick, Architektur... JAX Übersicht, Architektur Java Praktikum

Mehr

Web Service Security

Web Service Security Hochschule für Angewandte Wissenschaften Hamburg Fachbereich Elektrotechnik und Informatik SS 2005 Masterstudiengang Anwendungen I Kai von Luck Web Service Security Thies Rubarth rubart_t@informatik.haw-hamburg.de

Mehr

Web-Services Implementierung mit Java

Web-Services Implementierung mit Java Web-Services Implementierung mit Java J. Heinzelreiter WS 2004/05 Java-APIs für Web-Services (1) Anwendungs-Code JAXR JAXM JAX-RPC SAAJ SOAP/SwA JWSDL WSDL XML/XML-Schema Web-Services/Java - 2 Java-APIs

Mehr

VS11 Slide 1. Verteilte Systeme. Vorlesung 11 Sebastian Iwanowski FH Wedel

VS11 Slide 1. Verteilte Systeme. Vorlesung 11 Sebastian Iwanowski FH Wedel VS11 Slide 1 Verteilte Systeme Vorlesung 11 Sebastian Iwanowski FH Wedel VS11 Slide 2 Verteilte Systeme 1. Innovative Beispiele aus der Praxis 2. Allgemeine Anforderungen und Techniken verteilter Systeme

Mehr

Web Service Entwicklung mit Java. Sven Lindow

Web Service Entwicklung mit Java. Sven Lindow Web Service Entwicklung mit Java Sven Lindow 22.11.2006 Agenda Einleitung SOAP, REST, WSDL, UDDI Web Services mit Java JWSDP JAX-RPC, JAX-WS 2.0 AXIS, AXIS2 Web Services nutzen Google, Ebay Web Services

Mehr

Norm 410 Security Token Service

Norm 410 Security Token Service 1 Norm 410 Security Token Service 2 3 4 Release und Version Release 2 Version 2.5.0 (2.4.0) vom 25.04.2013, NAUS-Beschluss vom 14.06.2012 5 6 7 8 9 10 Status Arbeitsentwurf vom 12.08.2008 Potenzielle Norm

Mehr

Sicherheitsaspekte von Web Services. Hauptseminar Rechnernetze

Sicherheitsaspekte von Web Services. Hauptseminar Rechnernetze Sicherheitsaspekte von Web Services Hauptseminar Rechnernetze Stefan Hennig sh790883@inf.tu-dresden.de 21. Januar 2005 Gliederung Einführung Überblick Sicherheit auf Netzwerk- und Transportebene XML-Sicherheit

Mehr

Termin 4: Web Services Computing

Termin 4: Web Services Computing Arbeitsgruppe Übung Netzbasierte Informationssysteme Termin 4: Web Services Computing Prof. Dr. Adrian Paschke Arbeitsgruppe Corporate Semantic Web (AG-CSW) Institut für Informatik, Freie Universität Berlin

Mehr

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen 9 3 Web Services 3.1 Überblick Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen mit Hilfe von XML über das Internet ermöglicht (siehe Abb.

Mehr

Containerformat Spezifikation

Containerformat Spezifikation Containerformat Spezifikation Version 1.0-09.05.2011 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...

Mehr

Web Services: Inhalt

Web Services: Inhalt Web Services Fachseminar Verteilte Systeme 8. April 2002 - Marco Steiner Assistent: Thomas Schoch Professor: Dr. F. Mattern Web Services: Inhalt Bedeutung Gegenwart Architektur SOAP WSDL UDDI Vergleich

Mehr

Containerformat Spezifikation

Containerformat Spezifikation Containerformat Spezifikation Version 1.1-21.02.2014 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...

Mehr

Andreas Eberhart Stefan Fischer. Web Services. Grundlagen und praktische Umsetzung mit J2EE und.net HANSER

Andreas Eberhart Stefan Fischer. Web Services. Grundlagen und praktische Umsetzung mit J2EE und.net HANSER Andreas Eberhart Stefan Fischer Web Services Grundlagen und praktische Umsetzung mit J2EE und.net HANSER 1 Einführung 1 1.1 Motivation 1 1.2 Aufbau des Buches 6 1.3 Die Web-Seite zum Buch 11 Teil I: Grundlagen

Mehr

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke. 18.09.2002 J.M.Joller 1

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke. 18.09.2002 J.M.Joller 1 Web Services XML, WSDL, SOAP und UDDI Einblicke und Ausblicke 18.09.2002 J.M.Joller 1 Architektur von Web Services und ergänzende Technologien Inhalt Sicherheit WS-License und WS-Security Prozessfluss

Mehr

WS-Security. Thies Rubarth. Sicherheitskonzepte in global verteilten Anwendungen. 21. Sep 2007 ACM/GI Localgroup #216

WS-Security. Thies Rubarth. Sicherheitskonzepte in global verteilten Anwendungen. 21. Sep 2007 ACM/GI Localgroup #216 WS-Security Sicherheitskonzepte in global verteilten Anwendungen Thies Rubarth 21. Sep 2007 ACM/GI Localgroup #216 Thies Rubarth, M.Sc. (Informatik) IT Berater Jahrgang 1979 Anwendungsentwicklung seit

Mehr

Workflow, Business Process Management, 4.Teil

Workflow, Business Process Management, 4.Teil Workflow, Business Process Management, 4.Teil 24. Januar 2004 Der vorliegende Text darf für Zwecke der Vorlesung Workflow, Business Process Management des Autors vervielfältigt werden. Eine weitere Nutzung

Mehr

Service-Orientierte Architekturen

Service-Orientierte Architekturen Hochschule Bonn-Rhein-Sieg Service-Orientierte Architekturen Kapitel 7: Web Services IV Exkurs über Sicherheitsanforderungen Vorlesung im Masterstudiengang Informatik Sommersemester 2010 Prof. Dr. Sascha

Mehr

XML Signature (DSig) Einführung, Anwendungsbeispiele und Ausblick. heiko@vegan-welt.de GPN4: 22.05.2005

XML Signature (DSig) Einführung, Anwendungsbeispiele und Ausblick. heiko@vegan-welt.de GPN4: 22.05.2005 XML Signature (DSig) Einführung, Anwendungsbeispiele und Ausblick GPN4: 22.05.2005 Übersicht Wofür Signaturen? Wieso ein weiteres Signaturverfahren? Grundlagen Signatur-Typen Juristische Aspekte von Signaturen

Mehr

XML-Sicherheitsdienste für das Netzwerk der Global Biodiversity Information Facility GBIF

XML-Sicherheitsdienste für das Netzwerk der Global Biodiversity Information Facility GBIF XML-Sicherheitsdienste für das Netzwerk der Global Biodiversity Information Facility GBIF Dipl.-Inf. Lutz Suhrbier Prof. Dr.-Ing. Robert Tolksdorf Dipl.-Inf. Ekaterina Langer Freie Universität Berlin Institut

Mehr

Netzprogrammierung Web-Dienste

Netzprogrammierung Web-Dienste Netzprogrammierung Web-Dienste Robert Tolksdorf und Mitarbeiter und Peter Löhr Überblick 1. Was sind Web-Dienste? 3 2. WSDL 13 3. Axis 20 4. SOAP 23 5. SOAP und HTTP 30 6. Zusammenfassung 36 Robert Tolksdorf

Mehr

SOAP Simple Object Access Protocol

SOAP Simple Object Access Protocol Informatikseminar Tobias Briel Überblick 1. Einführung - was ist? 2. Middlewaretechnologie 3. Aufbau von Nachrichten 4. Vergleiche 5. Beispielanwendung 6. Zusammenfassung 1 Einführung was ist Soap? neue

Mehr

Web Service Security

Web Service Security Informatik Masterstudiengang SS 2005 Anwendungen I Web Service Security Thies Rubarth Übersicht Einleitung Secure Socket Layer XML Encryption & XML Signature WS-* WS-Security WS-Policy WS-Trust Angebot

Mehr

Sicherheit in Web Services. Seminar Service-orientierte Software Architekturen Melanie Storm

Sicherheit in Web Services. Seminar Service-orientierte Software Architekturen Melanie Storm Sicherheit in Web Services Seminar Service-orientierte Software Architekturen Melanie Storm Agenda Motivation Fallbeispiel WS-Security XML Encryption XML Signature WS-Policy WS-SecurityPolicy WS-Trust

Mehr

XML-RPC, SOAP und Web Services. Jörn Clausen joern@techfak.uni-bielefeld.de

XML-RPC, SOAP und Web Services. Jörn Clausen joern@techfak.uni-bielefeld.de XML-RPC, SOAP und Web Services Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Was ist RPC? Was hat XML mit RPC zu tun? Was sind XML-RPC und SOAP? Was sind Web Services? Wird das die Welt retten?

Mehr

Web Service Security - XKMS (TrustPoint)

Web Service Security - XKMS (TrustPoint) Web Service Security - XKMS (TrustPoint) Daniel Bär Andreas Philipp Norbert Pohlmann Fachhochschule Gelsenkirchen Fachbereich Informatik Verteilte Systeme und Informationssicherheit Neidenburger Str. 43,

Mehr

Technische Universität München. SAML/Shibboleth. Ein Vortrag von Florian Mutter

Technische Universität München. SAML/Shibboleth. Ein Vortrag von Florian Mutter SAML/Shibboleth Ein Vortrag von Florian Mutter Security Assertion Markup Language XML-basierter Standard für den Austausch von Authentifizierungs-, Attributs- Berechtigungsinformationen Seit 2001 von OASIS

Mehr

Übersicht. Projekt DB-basierte, mobile Systeme. Übersicht. Was sind Web Services? Web Service - Kompakt. Warum das Rad neu erfinden?!

Übersicht. Projekt DB-basierte, mobile Systeme. Übersicht. Was sind Web Services? Web Service - Kompakt. Warum das Rad neu erfinden?! Übersicht HTML Projekt DB-basierte, mobile Systeme JAX-RPC via SOAP Aufgabenblatt 4 Web Services Übersicht Was sind Web Services? "A web service is any service that is available over the Internet, uses

Mehr

Web Services and Semantic Web - Introduction to Web Services. von Andreas Weiler

Web Services and Semantic Web - Introduction to Web Services. von Andreas Weiler Web Services and Semantic Web - Introduction to Web Services von Andreas Weiler Definitionen Beispiele Technologien Vorteile Kritik Abschlussbeurteilung Fragen? Definition von IBM: Web services are a new

Mehr

Sicherheitsaspekte in Service Orientierten Architekturen. Eike Falkenberg Sommersemester 2006 Anwendungen I

Sicherheitsaspekte in Service Orientierten Architekturen. Eike Falkenberg Sommersemester 2006 Anwendungen I Sicherheitsaspekte in Service Orientierten Architekturen Eike Falkenberg Sommersemester 2006 Anwendungen I Agenda SOA? Web Services? Sicherheitsrisiko Web Services Web Services & Sicherheit Sichere SOAs

Mehr

Oliver Olbrich Das ebxml Projekt Entstand 1999 in einer gemeinsamen Initiative von OASIS (Organisation for the Advancement of Structured Information Standards) und UN/CEAFACT (United Nations Center for

Mehr

Merkblatt: HSM. Version 1.01. Systemvoraussetzungen, Setup und Trouble Shooting. pdfsupport@pdf-tools.com

Merkblatt: HSM. Version 1.01. Systemvoraussetzungen, Setup und Trouble Shooting. pdfsupport@pdf-tools.com Merkblatt: HSM Version 1.01 Systemvoraussetzungen, Setup und Trouble Shooting Kontakt: pdfsupport@pdf-tools.com Besitzer: PDF Tools AG Kasernenstrasse 1 8184 Bachenbülach Schweiz www.pdf-tools.com Copyright

Mehr

Basistechnologien: Web-Services

Basistechnologien: Web-Services Alexander Rudolf Cloud-Computing Seminar Hochschule Mannheim WS0910 1/29 Basistechnologien: Web-Services Alexander Rudolf Hochschule Mannheim Fakultät für Informatik alexander.rudolf@stud.hs-mannheim.de

Mehr

Java Web Services mit Apache Axis2 Entwickler

Java Web Services mit Apache Axis2 Entwickler Thilo Frotscher, Dapeng Wang, Marc Teufel Java Web Services mit Apache Axis2 Entwickler Vorwort 15 1 Einleitung 25 1.1 Entstehung 26 1.2 Unterstützte Standards 28 1.3 Was beinhaltet Axis2? 29 1.4 Warum

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

COI-BUSINESSFLOW SOAP-SERVER MODUL INFORMATION

COI-BUSINESSFLOW SOAP-SERVER MODUL INFORMATION COI-BUSINESSFLOW SOAP-SERVER MODUL INFORMATION Präambel Die COI GmbH entwickelt seit 1988 moderne, prozessorientierte Lösungen rund um die Themen Archivierung, Dokumentenmanagement und Workflow. Als kompetenter

Mehr

JAXR Java API for XML Registries. Jasmin Hatteh

JAXR Java API for XML Registries. Jasmin Hatteh JAXR Java API for XML Registries Jasmin Hatteh Übersicht Web Service Architektur Rollenverteilung Interaktionen Business-Registry UDDI ebxml JAXR Architektur Interaktionen Pakete Was sind Web Services?

Mehr

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition Inhaltsverzeichnis Vorwort 13 I Enterprise Java im Überblick 1 Bedeutung von Enterprise Java und IBM WebSphere 21 1.1 Enterprise Java 23 1.1.1 Anforderungen 23 1.1.2 E-Business 30 1.1.3 Java 36 1.2 IBM

Mehr

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Entwicklung von Web-Anwendungen auf JAVA EE Basis Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages

Mehr

.NET-Networking 2 Windows Communication Foundation

.NET-Networking 2 Windows Communication Foundation .NET-Networking 2 Windows Communication Foundation Proseminar Objektorientiertes Programmieren mit.net und C# Fabian Raab Institut für Informatik Software & Systems Engineering Agenda Grundproblem Bestandteile

Mehr

Anwendung eines Enterprise Java Beans

Anwendung eines Enterprise Java Beans Anwendung eines Enterprise Java Beans EJB Server EJB Container Remote Interface Home Interface EJB Object Der EJB Container kümmert sich um die Kommunikation des Beans mit anderen Komponenten, wobei er

Mehr

XML-RPC & SOAP. Sven Heß & Fabio Caprera Systemprogrammierung SS 08

XML-RPC & SOAP. Sven Heß & Fabio Caprera Systemprogrammierung SS 08 XML-RPC & SOAP & Fabio Caprera Systemprogrammierung SS 08 Inhalt XML-RPC Überblick Entstehung Konzept Fehlerbehandlung Vor- und Nachteile SOAP Überblick Entstehung Konzept Fehlerbehandlung Vor- und Nachteile

Mehr

Web-Services Implementierung

Web-Services Implementierung Web-Services Implementierung Praktikum Informationsintegration 8.11.2005 Agenda Aktueller Stand / Abgabe Implementierung Wie geht das mit Java und Tomcat? Service Client 2 Abgabe Teil 1 Ein paar Zahlen

Mehr

Web Services. Dr. Wolfgang Süß

Web Services. Dr. Wolfgang Süß Service-orientierte Architektur (SOA) Architekturkonzept, da sich aus Diensten zusammensetzt. 3 Komponenten: Konnektoren: register Registrierung eines Dienstes bei einer Registry find Suchanfrage eines

Mehr

Securing SOAP e-services

Securing SOAP e-services Securing SOAP e-services Nilson Reyes Sommersemester 2004 aus: E. Damiani, S. De Capitani di Vermercati, S. Paraboschi, P. Samarati, Securing SOAP e-sservices, IJIS, Ausgabe 1 (2002), S.110-115. Gliederung

Mehr

Grundlagen des Grid Computing

Grundlagen des Grid Computing Grundlagen des Grid Computing Webservices und Grid Computing Globus Toolkit 4 - Grundlagen ICA Joh.. Kepler Universität t Linz Eine Typische Grid-Applikation (Beispiel) VO Management Service Resource Discovery

Mehr

Vorlesung - Web Services

Vorlesung - Web Services Vorlesung - IVS Arbeitsgruppe Softwaretechnik Abschnitt 3.1.3 Grundlegende Web Service Technologien Seite 1 - Übersicht UDDI WSDL Requester SOAP over HTTP Provider Seite 2 - Übersicht A web service is

Mehr

Analyse von Sicherheitaspekten in Service-orientierten Architekturen

Analyse von Sicherheitaspekten in Service-orientierten Architekturen Analyse von Sicherheitaspekten in Service-orientierten Architekturen Vortragende: Jia Jia Betreuer: Dipl.-Inf. Matthias Lehmann Dresden,10.12.2009 10.12.2009 Analyse von Sicherheitaspekten in SOA 1 Gliederung

Mehr

Erweitern Sie ihren Tomcat um das AXIS-Framework und machen Sie ihn damit bereit für den Einsatz von Web Services:

Erweitern Sie ihren Tomcat um das AXIS-Framework und machen Sie ihn damit bereit für den Einsatz von Web Services: 0BBA Karlsruhe, Vorlesung Programmieren, Web Services 1BAufgabe 1 Tomcat um das AXIS-Framework erweitern : Erweitern Sie ihren Tomcat um das AXIS-Framework und machen Sie ihn damit bereit für den Einsatz

Mehr

Mobile und Verteilte Datenbanken

Mobile und Verteilte Datenbanken Mobile und Verteilte Datenbanken Java RMI Vorlesung Wintersemester 2013/2014 groppe@ifis.uni-luebeck.de Institut für Informationssysteme Universität zu Lübeck Kommunikations-Middleware Bietet höhere Kommunikations-Dienste

Mehr

Block Web-Dienste. Beispiel: ohne Browser. ohne Browser. Beispiel: Definition

Block Web-Dienste. Beispiel: ohne Browser. ohne Browser. Beispiel: Definition Block Web-Dienste Web-Dienste Klaus Schild, 2004 1 heutige Vorlesung Was sind Web-Dienste (Web Services)? diensteorientierte Architekturen Was ist SOAP, WSDL und UDDI? Entfernte Prozeduraufrufe (RPCs)

Mehr

SSL-Protokoll und Internet-Sicherheit

SSL-Protokoll und Internet-Sicherheit SSL-Protokoll und Internet-Sicherheit Christina Bräutigam Universität Dortmund 5. Dezember 2005 Übersicht 1 Einleitung 2 Allgemeines zu SSL 3 Einbindung in TCP/IP 4 SSL 3.0-Sicherheitsschicht über TCP

Mehr

Auszug aus Axis2 Schulung

Auszug aus Axis2 Schulung Auszug aus Axis2 Schulung Dieses Dokument ist ein Auszug aus unserem Skript zur Axis2- Schulung. Es dient lediglich als Beispiel für unsere Kursunterlagen. Thomas Bayer Hauptstraße 33 75050 Gemmingen Mehr

Mehr

Programmierhandbuch SAP NetWeaver* Sicherheit

Programmierhandbuch SAP NetWeaver* Sicherheit Martin Raepple Programmierhandbuch SAP NetWeaver* Sicherheit Galileo Press Bonn Boston Inhalt Vorwort 13 2.1 Sicherheit und serviceorientierte Architekturen 24 2.1.1 Sicherheitsziele der Informationssicherheit

Mehr

Application Server und Continuous Integration

Application Server und Continuous Integration Application Server und Continuous Integration Outline 2 Einleitung Application Server Java EE Enterprise Applikationen vs. Web Applikationen Web Application Life Cycle Servlets JavaServer Pages verschiedene

Mehr

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Präsentation zur Diplomarbeit von Übersicht Java 2 Enterprise Edition Java Servlets JavaServer Pages Enterprise JavaBeans Framework

Mehr

Mobile Agenten am Beispiel JADE (Java Agent DEvelopment Framework) Vorstellung in der Übung zu Konzepte Verteilter Systeme

Mobile Agenten am Beispiel JADE (Java Agent DEvelopment Framework) Vorstellung in der Übung zu Konzepte Verteilter Systeme Mobile Agenten am Beispiel JADE (Java Agent DEvelopment Framework) Vorstellung in der Übung zu Konzepte Verteilter Systeme Agenda Mobile Agenten allgemein JADE - Java Agent DEvelopment Framework Anwendungsfall

Mehr

Geschäftsführer, OPTIMAbit GmbH. OPTIMA Business Information Technology GmbH ist eine Beratungsfirma, spezialisiert auf

Geschäftsführer, OPTIMAbit GmbH. OPTIMA Business Information Technology GmbH ist eine Beratungsfirma, spezialisiert auf SOA Security Dr. Bruce Sams Geschäftsführer, OPTIMAbit GmbH Über OPTIMA OPTIMA Business Information Technology GmbH ist eine Beratungsfirma, spezialisiert auf Sicherheit für Anwendungen und Infrastrukturen

Mehr

E-Mail-Verschlüsselung mit Geschäftspartnern

E-Mail-Verschlüsselung mit Geschäftspartnern E-Mail-Verschlüsselung mit (Anleitung für Geschäftspartner) Datum: 13.07.2011 Dokumentenart: Anwenderbeschreibung Version: 3.0 : Redaktionsteam PKI cio.siemens.com Inhaltsverzeichnis 1. Zweck des Dokumentes:...3

Mehr

FuE-Bereich IuK-Systeme im Gesundheitswesen

FuE-Bereich IuK-Systeme im Gesundheitswesen FuE-Bereich IuK-Systeme im Gesundheitswesen IG XML und Web Services Dipl.-Inform. Axel Schwolow IG Kommunikation im Web Entwicklung früher ausschließlich Kommunikation über Browser heute zunehmend direkt

Mehr

Performance Untersuchung von WS Security Implementierungen in interoperablen Umgebungen

Performance Untersuchung von WS Security Implementierungen in interoperablen Umgebungen Performance Untersuchung von WS Security Implementierungen in interoperablen Umgebungen Master Thesis Outline Eike Falkenberg Im Master Studiengang Informatik Wintersemester 2006 / 2007 Department Informatik

Mehr

Web 2.0 Software-Architekturen

Web 2.0 Software-Architekturen Web 2.0 Software-Architekturen Servlets als Controller einer MVC Web Architektur Prof. Dr. Nikolaus Wulff HTTP und HTML Das HyperText TransferProtokoll (HTTP) beschreibt eine einfache verbindungslose Kommunikation,

Mehr

Portalverbundprotokoll Version 2. S-Profil. Konvention PVP2-S-Profil 2.1.2 Ergebnis der AG

Portalverbundprotokoll Version 2. S-Profil. Konvention PVP2-S-Profil 2.1.2 Ergebnis der AG 1 Portalverbundprotokoll Version 2 S-Profil Konvention PVP2-S-Profil 2.1.2 Ergebnis der AG Kurzbeschreibung Das S-Profil von PVP2 verwendet SAML WebSSO für die Authentifizierung von Benutzern mit Webbrowser.

Mehr

KompaSbilität zu Standards (WS- I) Contracts. Interfaces und Generics Umfangreiche AXribuSerung. Mehr Spielraum auf Transportebene

KompaSbilität zu Standards (WS- I) Contracts. Interfaces und Generics Umfangreiche AXribuSerung. Mehr Spielraum auf Transportebene Komponenten WCF (.NET Framework) WCF Verfeinerung und Reifung der ursprünglichen Version Geringere Unterschiede zu ASMX 2.0 (.NET 2.0) + WSE 3.0 Schwerpunkte KompaSbilität zu Standards (WS- I) Contracts

Mehr

Digitale Signaturen für Ï Signaturzertifikate für geschützte email-kommunikation

Digitale Signaturen für Ï Signaturzertifikate für geschützte email-kommunikation Digitale Signaturen für Ï Signaturzertifikate für geschützte email-kommunikation Ein Großteil der heutigen Kommunikation geschieht per email. Kaum ein anderes Medium ist schneller und effizienter. Allerdings

Mehr

Managed VPSv3 Was ist neu?

Managed VPSv3 Was ist neu? Managed VPSv3 Was ist neu? Copyright 2006 VERIO Europe Seite 1 1 EINFÜHRUNG 3 1.1 Inhalt 3 2 WAS IST NEU? 4 2.1 Speicherplatz 4 2.2 Betriebssystem 4 2.3 Dateisystem 4 2.4 Wichtige Services 5 2.5 Programme

Mehr

XML Signature Wrapping: Die Kunst SAML Assertions zu fälschen. 19. DFN Workshop Sicherheit in vernetzten Systemen Hamburg, 22.02.

XML Signature Wrapping: Die Kunst SAML Assertions zu fälschen. 19. DFN Workshop Sicherheit in vernetzten Systemen Hamburg, 22.02. XML Wrapping: Die Kunst SAML s zu fälschen Andreas Mayer Adolf Würth GmbH & Co. KG Künzelsau-Gaisbach Prof. Dr. Jörg Schwenk Lehrstuhl für Netz- und Datensicherheit Ruhr-Universität Bochum 19. DFN Workshop

Mehr

SOA mit.net: Vom Geschäftsprozess zur Lösung

SOA mit.net: Vom Geschäftsprozess zur Lösung SOA mit.net: Vom Geschäftsprozess zur Lösung Manfred Steyer Aktuelles Buch.Net 4.0 Update ISBN 978-3866454439 http://tinyurl.com/net4update 1 Kontakt [www] www.softwarearchitekt.at [mail] Manfred.Steyer@SoftwareArchitekt.at

Mehr

Einführung in WebServices

Einführung in WebServices Einführung in WebServices Grundlagen und Praxis von WebServices Seminarleiterin: Dipl.-Ing. Mahbouba Gharbi Folie 1 / 34 Zielsetzung und Voraussetzungen Zielsetzung Nutzen von WebServices kennenlernen

Mehr

Praktikum Internetprotokolle - POP3

Praktikum Internetprotokolle - POP3 Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Institut für Praktische Informatik und Medieninformatik Fachgebiet Telematik/Rechnernetze 19. Mai 2008 1 Aufgabenstellung Praktikum

Mehr

Client/Server-Systeme

Client/Server-Systeme Fachbereich Informatik Projektgruppe KOSI Kooperative Spiele im Internet Client/Server-Systeme Vortragender Jan-Ole Janssen 26. November 2000 Übersicht Teil 1 Das Client/Server-Konzept Teil 2 Client/Server-Architekturen

Mehr

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server Einsatz von Applikationsservern Untersucht am Beispiel des Sybase Enterprise Application Server Architektur von Datenbanksystemen Client / Server Modell (2 Schichten Modell) Benutzerschnittstelle Präsentationslogik

Mehr

Howto. Konfiguration eines Adobe Document Services

Howto. Konfiguration eines Adobe Document Services Howto Konfiguration eines Adobe Document Services (ADS) Inhaltsverzeichnis: 1 SYSTEMUMGEBUNG... 3 2 TECHNISCHE VERBINDUNGEN ZWISCHEN DEN SYSTEMEN... 3 2.1 PDF BASIERENDE FORMULARE IN DER ABAP UMGEBUNG...

Mehr

Java Forum Stuttgart 2008

Java Forum Stuttgart 2008 Professionelle Open Source SOA in 45 Minuten! Java Forum Stuttgart 2008 Dr. Halil-Cem Gürsoy, CDI AG Der Referent Insgesamt ca. 10 Jahre Beratung, davor Forschung Senior Consultant - JEE Evangelist Hauptsächlich

Mehr

Enterprise Java Beans Einführung

Enterprise Java Beans Einführung Enterprise Java Beans Einführung Vorlesung 8 Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht EJBs im JEE Umfeld Verschiedene Typen von EJBs Von der Javaklasse

Mehr

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine

Mehr

E-Mail-Verschlüsselung mit Geschäftspartnern

E-Mail-Verschlüsselung mit Geschäftspartnern E-Mail-Verschlüsselung mit (Anleitung für Geschäftspartner) Datum: 15.07.2013 Dokumentenart: Anwenderbeschreibung Version: 3.2 : Redaktionsteam PKI cio.siemens.com Inhaltsverzeichnis 1. Zweck des Dokumentes:...

Mehr

Zusicherung von Qualitätskriterien bei WebServices. Dr. Bernhard Humm, Matthias Geiß sd&m-konferenz 2003 Web Services 17./18.07.

Zusicherung von Qualitätskriterien bei WebServices. Dr. Bernhard Humm, Matthias Geiß sd&m-konferenz 2003 Web Services 17./18.07. Zusicherung von Qualitätskriterien bei WebServices Dr. Bernhard Humm, Matthias Geiß sd&m-konferenz 2003 Web Services 17./18.07.2003 Agenda Verteilte Systeme am am Beispiel Beispiel Aspekte von Verteilung

Mehr

Web- Applikationen. in Java-Web

Web- Applikationen. in Java-Web Einführung in Java-Web Web- Applikationen Frank Huber Humboldt-Universität zu Berlin Allgemeines Java: Programmierung ist Programmierung nach Konvention Insbesondere bei Web-Applikationen wurde eine API

Mehr

On breaking SAML. Be Whoever You Want to Be. von David Foerster

On breaking SAML. Be Whoever You Want to Be. von David Foerster On breaking SAML Be Whoever You Want to Be von David Foerster Gliederung Übersicht & Motivation XML Signature Wrapping Attacks Vorstellung Gegenmaßnahmen Zusammenfassung 2 Übersicht & Motivation SAML Übersicht

Mehr

Benutzerdokumentation Web-Portal

Benutzerdokumentation Web-Portal GRUPP: SWT0822 Benutzerdokumentation Web-Portal Yet Another Reversi Game Martin Gielow, Stephan Mennicke, Daniel Moos, Christine Schröder, Christine Stüve, Christian Sura 05. Mai 2009 Inhalt 1. Einleitung...3

Mehr

Client/Server-Systeme

Client/Server-Systeme Client/Server-Systeme Prof. Dr.-Ing. Wilhelm G. Spruth SS 2005 Teil 16 RMI, DCOM, Webservices cs 1100 ww6 sch 05-97 Remote Method Invocation (RMI) JVM JVM Client Server Stub Java Remote Skeleton Method

Mehr

NEWpixi* API und die Umstellung auf REST. Freitag, 3. Mai 13

NEWpixi* API und die Umstellung auf REST. Freitag, 3. Mai 13 NEWpixi* API und die Umstellung auf REST Fakten NEWpixi* API Technik REST-basierend.NET Webservice IIS Webserver Release 31. August 2013, zusammen mit dem NEWpixi* ELI Release Legacy API und erste NEWpixi*

Mehr

Entwicklung eines Provisions Service mit einer Web Service-Schnittstelle

Entwicklung eines Provisions Service mit einer Web Service-Schnittstelle Entwicklung eines Provisions Service mit einer Web Service-Schnittstelle Judith Rüesch Semesterarbeit Departement Informatik Wintersemester 2006/2007 Professor: David Basin Betreuer: Paul Sevinç 2 Inhaltsverzeichnis

Mehr

Web Services und Sicherheit

Web Services und Sicherheit Autoren: Kristian Kottke, Christian Latus, Cristina Murgu, Ognyan Naydenov Folie 1 Agenda Sicherheitsprobleme von Web Services Lösungsansätze Sicherheitsmechanismen des Java Application Servers Autorisation

Mehr

Java und XML/XML und Java. Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle.

Java und XML/XML und Java. Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle. Java und XML/XML und Java Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle.de XML und Programmiersprachen... Java ist... Programmiersprache

Mehr

Client/Server-Programmierung WS 2007/2008. Web Services: Schritt-für-Schritt Anleitung

Client/Server-Programmierung WS 2007/2008. Web Services: Schritt-für-Schritt Anleitung Client/Server-Programmierung WS 2007/2008 Web Services: Schritt-für-Schritt Anleitung (Sitzungsverwaltung mit Hilfe von HTTP Cookies) Eingesetzte Software: - Apache Tomcat 5.5.9 - Axis 1.2.1 Version 1.1,

Mehr

Vorlesung "SOA Entwicklung verteilter Systeme auf Basis serviceorientierter Architekturen" 10. Sicherheitsaspekte (Fortsetzung)

Vorlesung SOA Entwicklung verteilter Systeme auf Basis serviceorientierter Architekturen 10. Sicherheitsaspekte (Fortsetzung) Vorlesung "SOA Entwicklung verteilter Systeme auf Basis serviceorientierter Architekturen" 10. Sicherheitsaspekte (Fortsetzung) Dr.-Ing. Iris Braun Gliederung WS-Security Authentifizierung Single-Sign-On

Mehr

Service-Oriented Architecture (SOA) [1]

Service-Oriented Architecture (SOA) [1] Verteilte Systeme SoSe 2007 Service-Oriented Architecture und Web Services Service-Oriented Architecture (SOA) [1] Ziel: Entwicklung einer robusten Architektur zur einfachen, schnellen und sicheren Integration

Mehr

IT-Sicherheit WS 2012/13. Übung 5. zum 28. November 2012

IT-Sicherheit WS 2012/13. Übung 5. zum 28. November 2012 Prof. Dr. C. Eckert Thomas Kittel IT-Sicherheit WS 2012/13 Übung 5 zum 28. November 2012 Institut für Informatik Lehrstuhl für Sicherheit in der Informatik 1 X.509-Zertifikate Zertifikate nach dem X.509-Standard

Mehr

Motivation. Inhalt. URI-Schemata (1) URI-Schemata (2)

Motivation. Inhalt. URI-Schemata (1) URI-Schemata (2) 14. URIs Uniform Resource Identifier 14-1 14. URIs Uniform Resource Identifier 14-2 Motivation Das WWW ist ein Hypermedia System. Es enthält: Resourcen (Multimedia Dokumente) Verweise (Links) zwischen

Mehr

CORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten

CORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten CORBA-Konzept Ziele Common Object Request Broker Architecture CORBA Plattformunabhängige Kommunikation Transparente Verteilung von Objekten CORBA-Konzept Object Management Group Spezifiziert den CORBA-Standard

Mehr

Zustandsgebundene Webservices

Zustandsgebundene Webservices Zustandsgebundene Webservices Präsentation ausgewählter Problemstellungen der Informatik Markus Oertel oer@uni-paderborn.de Universität Paderborn 25. September 2005 Zustandsgebundene Webservices Seite

Mehr

Etablierung serviceorientierter Architekturen mit Web Services

Etablierung serviceorientierter Architekturen mit Web Services Etablierung serviceorientierter Architekturen mit Web Services Vorlesung im (Entwicklung von Serviceangeboten) 1 Agenda Einsatzbereiche von Web Service basierten Angeboten Übersicht zur Java-System Application

Mehr

Bewertung der Einsatzmöglichkeiten von XML Sicherheitslösungen in mobilen Kommunikationsumgebungen. Fabian Pretsch

Bewertung der Einsatzmöglichkeiten von XML Sicherheitslösungen in mobilen Kommunikationsumgebungen. Fabian Pretsch Bewertung der Einsatzmöglichkeiten von XML Sicherheitslösungen in mobilen Kommunikationsumgebungen Fabian Pretsch Ziel Implementierung von XML Encryption/Signature in Java Testen der Implementierung auf

Mehr

5. Web-Services. Kommunikation zwischen Client und Server über XML-Format SOAP

5. Web-Services. Kommunikation zwischen Client und Server über XML-Format SOAP 1 5. Web-Services Kommunikation zwischen Client und Server über XML-Format SOAP Client SOAP Server Beschreibung von Webservices in WSDL (Web Services Description Language) Web Service Protokollstapel Suche

Mehr

ESB. Open Source ESB: Mule Flightreservation. Res Gilgen Hochschule Luzern [Wählen Sie das Datum aus]

ESB. Open Source ESB: Mule Flightreservation. Res Gilgen Hochschule Luzern [Wählen Sie das Datum aus] ESB Open Source ESB: Mule Flightreservation Res Gilgen Hochschule Luzern [Wählen Sie das Datum aus] Inhalt 1. Open Source ESB: Mule... 2 1.1. Überblick... 2 1.1.1. Das Beispiel Zeigt:... 2 1.2. Installationsanleitung...

Mehr