UDDI TU Chemnitz Fakultät für Informatik SS 2003

Slides:



Advertisements
Ähnliche Präsentationen
SOAP, nur ein neuer XML- Dialekt?
Advertisements

Einer der Dienste im Internet
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil3.
WML – Wireless Markup Language Vortrag von Eduard Jakel.
Vorteile der Online-Produkte
Was bedeutet XML in Office-Applikationen für Systemadministratoren? Ruprecht Dröge MCSE MCSD MCT Microsoft Pre Sales Consultant.
Anmerkungen zu XML Im September 2000 Entwicklung/Anspruch von XML
Pflege der Internetdienste
Datenbankzugriff im WWW (Kommerzielle Systeme)
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
IMS Universität Stuttgart 1 Einführung in XML Hannah Kermes HS: Elektronische Wörterbücher Do,
HTML - Einführung Richard Göbel.
XINDICE The Apache XML Project Name: Jacqueline Langhorst
© 2006 W. Oberschelp, G. Vossen Rechneraufbau & Rechnerstrukturen, Folie 2.1.
Grundkurs Theoretische Informatik, Folie 2.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 2 Gottfried Vossen Kurt-Ulrich Witt.
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik I Vorlesung Listen-
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Strukturänderungen Verteilte Anwendungen Wintersemester 06/07 © Wolfgang Schönfeld.
Datenbanken Einführung Merkmale dateiorientierte Datenverwaltung
1 Grundlagen und Anwendung der Extensible Markup Language (XML ) Peter Buxmann Institut für Wirtschaftsinformatik Johann Wolfgang Goethe-Universität Frankfurt.
Grundschutztools
Xindice Datenbanken vs. Markup Prof Dr. Manfred Thaller WS 2009 / 2010 Referent: Seyda Kurt.
Bild 1.1 Copyright © Alfred Mertins | Signaltheorie, 2. Auflage Vieweg+Teubner PLUS Zusatzmaterialien Vieweg+Teubner Verlag | Wiesbaden.
Seminar Praktische Informatik Web Services
20:00.
SK / , , in Hochkössen und der Wildschönau flow Ski- und Snowboardschule Intersport Menzel.
Software Architektur III
Peter Egger 1. ?? To doodle = Kritzelei 2003 von CH-Informatiker Michael Naef entwickelt Kostenloses Werkzeug zur Erstellung von Terminumfragen.
Die .NET Common Language Runtime
Die .NET Common Language Runtime
TWS/Graph HORIZONT Produkt-Präsentation Software für Rechenzentren
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
ArcGIS als WPS Server Aktueller Stand der Umsetzung
Service Location Protocol Ein Service Discovery Protokoll Patric Zbinden 20. März 2003.
Webservice Grundlagen
Einsatzgebiete und Anwendungen
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 4 Folie 2 REST Web Services (1)
NEU! 1 2. Wo kommt diese Art von Rezeptor im Körper vor?
Analyse von Ablaufdiagrammen
HORIZONT 1 XINFO ® Das IT - Informationssystem PL/1 Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
Publikation auf Knopfdruck Judith Riegelnig Michael Grüebler 19. Oktober 2010 / Statistiktage Neuenburg.
… und was man damit machen kann.
Ausgabe vom Seite 1, XML Eine Einführung XML - Eine Einführung.
Management- und Web Services- Architekturen
Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms II
Von Isabelle Spörl und Simon Schausberger
Einführung in Web Services Web Services in der Praxis
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
SiLeBAT Sicherstellung der Futter- und Lebensmittelwarenkette bei bio- und agro-terroristischen (BAT)-Schadenslagen.
© 2001 Sven Dammann1 Aufbau Integrierter Informationssysteme XML Bearbeitung und relationale Abbildung Sven Dammann Martin-Luther-Universität Halle-Wittenberg.
SharePoint 2013 Web Services
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Webspace Stephan Herbst Christian Köhler. Themen des Vortrages Kurze Einführung ins Thema Kurze Einführung ins Thema Webspace - Was? Wozu? Wo? Wie? Webspace.
Datum:17. Dezember 2014 Thema:IFRS Update zum Jahresende – die Neuerungen im Überblick Referent:Eberhard Grötzner, EMA ® Anlass:12. Arbeitskreis Internationale.
Jeder Benutzer definiert seine eigenen Privatgespräche Aufwandreduzierung für die zentrale Erstellung von Auswertungen Wahlweiser Zugang über Intranet.
Das IT - Informationssystem
Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler.
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
Internet-Grundtechnologien. Client / Server Client („Kunde“): fordert Information / Datei an im Internet: fordert Internetseite an, z.B.
Web Services Spezielle Methoden der SWT Liste V – WS 2008/2009 Christian Boryczewski.
Betriebs- systeme und Verteilte Systeme Namens- und Verzeichnisdienste Projektgruppe Peer2Peer Suche nach Webservices WS 2004/SS 2005 Maher Al-Bunni.
Mainframe und WebServices bei der W. KAPFERER KG Einfache Internet-Lösungen in Verbindung mit vorhandenen Host-Programm-Strukturen.
Patrick Richterich Lattwein GmbH Web Services Softwareentwicklung mit SOAP.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Web Services Dr. Wolfgang Wörndl
WebServices Vortrag zur Diplomarbeit WebServices Analyse und Einsatz von Thomas Graf FH Regensburg
SOAP - WSDL Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. Manfred Thaller AM 2 Hauptseminar: Virtuelle.
 Präsentation transkript:

UDDI TU Chemnitz Fakultät für Informatik SS 2003 Seminar Web und Service Engineering

UDDI Universal Description, Discovery and Integration Thema Thomas Trommer (thomas.trommer@informatik.tu-chemnitz.de)

Übersicht Einleitung Architektur Spezifikation UDDI Tools Was ist UDDI? Entstehung/ Entwicklung Warum UDDI? Architektur Die UDDI Business Registry Einbettung in den Protokollstack Aufbau der Registry Daten Spezifikation Enkodieren von Informationen Die API UDDI Tools Sicherheit, Alternativen, Kritik Zusammenfassung

1. Einführung

1.1. Was ist UDDI Plattformunabhängiger offener Standart Zum beschreiben von Services (Description) Zum auffinden von Unternehmen und deren Web Services (Discovery) Um Services einzubinden (Integration) Gelbe Seiten für Webservices

1.2. Entstehung/ Entwicklung Initiative namhafter Soft- und Hardwarehersteller Entwicklungsbeginn im Jahr 2000: Zusammenarbeit von Ariba, IBM und Microsoft ca. 50 Meetings 6 Monate September 2000: Version 1.0 März 2001: Version 2.0 Dezember 2001: Version 3.0 Aktuelle Anwendungen entsprechen meist Version 2.0

1.2. Entstehung/ Entwicklung B2B Bereich BizTalk, cXML XML, SOAP

1.3. Warum UDDI? Wenige kleine Firmen Angebotene Dienste leicht überschaubar Kein Problem den besten Anbieter manuell zu finden Viele große Unternehmen (Realität) Unzählige Dienstleistungen und Geschäftsbeziehungen Nahezu unmöglich den optimalen Geschäftpartner zu finden Manuell nicht überschaubar

1.3. Warum UDDI? Vor UDDI: Telefonbuch Branchenverzeichnis Suchmaschinen (Google, Yahoo, ...) Langwierige Suche Wahrscheinlich nicht alle Möglichkeiten betrachtet Nicht den optimalen Geschäftspartner gefunden Unnötige Kosten!

1.3. Warum UDDI? Anforderungen an UDDI: Firmen und Dienste schnell auffindbar machen Standardisierte Repräsentation dieser Firmen und Dienste Einfache Suche geeigneter Web Services Leichtere Einbindung von Webdiensten in die unternehmensinterne Struktur Geld sparen!

2. Architektur

2.1. Die UDDI Business Registry (UBR) Konzeptionell eine einzige Registrierungsstelle Über viele Operatorknoten verteilt Knoten replizieren und synchronisieren ihre Daten mindestens 1 mal am Tag Anfragen an beliebige Knoten liefern daher selbes Ergebnis Neuer Inhalt wird an einem einzigen Operatorknoten eingefügt Anmeldung bei Knotenbetreiber notwendig Knoten ist Hauptbesitzer des Inhalts Aktualisierungen und Löschungen der Daten nur über diesen Knoten möglich

2.1. Die UDDI Business Registry (UBR) Anfragen Registrierungen Änderungen IBM other UDDI.org Ariba other Microsoft

2.2. Einbettung in den Protokollstack UDDI im Protokollstack Anwendung UDDI SOAP XML HTTP|SMTP|TCP

2.3. Aufbau der Registry Daten White Pages Unternehmen registrieren Informationen über sich und die angebotenen bzw. unterstützten Dienste. technische Beschreibung der Dienste Yellow Pages Green Pages Service Type Registrations

2.3. Aufbau der Registry Daten White Pages Firmenname Beschreibung der Firma (Text) Kontaktinformationen Namen Telefon Fax Homepage ... Eindeutige identifizierende Nummer

2.3. Aufbau der Registry Daten Yellow Pages Beschreibung des Geschäftsfeldes z.B. „produzierendes Gewerbe“ oder „Autohandel“ Green Pages Technische Informationen Beschreibt Form und Verhalten des Web Service Beschreibt wo der Web Service zu finden ist

2.3. Aufbau der Registry Daten Service Type Registrations Konkrete technische Beschreibung des angebotenen Dienstes Unterstützte Standards Interchange-Formate Erforderliche Parameter Verweise auf weitere Beschreibungen der Dienste Eindeutige Identifikation des Servicetyps

3. Spezifikation Zwei wesentliche Bestandteile: XML-Schema für die Datenstrukturen Definiert welche Informationen in UDDI gelistet werden Definiert wie Informationen enkodiert werden API Ermöglicht abfragen, einfügen, ändern und löschen von Informationen

3.1. Enkodieren von Informationen Datenstrukturen sind in XML Schema definiert 5 zentrale Datenstrukturen sind darin spezifiziert: businessEntity businessService bindingTemplate tModel publisherAssertion

3.1. Enkodieren von Informationen

3.1. Enkodieren von Informationen businessEntity Grundlegende Informationen über das entsprechende Unternehmen, also den Inhalt der White Pages Enthält eine oder mehrere businessService Strukturen

3.1. Enkodieren von Informationen Spezifikation der XML Struktur: <element name="businessEntity" type="uddi:businessEntity" /> <complexType name="businessEntity">   <sequence>     <element ref="uddi:discoveryURLs" minOccurs="0" />     <element ref="uddi:name" maxOccurs="unbounded" />     <element ref="uddi:description" minOccurs="0" maxOccurs="unbounded" />     <element ref="uddi:contacts" minOccurs="0" />     <element ref="uddi:businessServices" minOccurs="0" />     <element ref="uddi:identifierBag" minOccurs="0" />     <element ref="uddi:categoryBag" minOccurs="0" />   </sequence>   <attribute name="businessKey" type="uddi:businessKey" use="required" />   <attribute name="operator" type="string" use="optional" />   <attribute name="authorizedName" type="string" use="optional" /> </complexType>

3.1. Enkodieren von Informationen businessService Enkodieren der Service Informationen Webservices auch allgemeine Service (z.B.) Telefonhotline Enthält ein oder mehrere bindingTemplate Strukturen

3.1. Enkodieren von Informationen Spezifikation der XML Struktur: <element name="businessService" type="uddi:businessService" /> <complexType name="businessService">   <sequence>     <element ref="uddi:name" minOccurs="0" maxOccurs="unbounded" />     <element ref="uddi:description" minOccurs="0" maxOccurs="unbounded" />     <element ref="uddi:bindingTemplates" minOccurs="0" />     <element ref="uddi:categoryBag" minOccurs="0" />   </sequence>   <attribute name="serviceKey" type="uddi:serviceKey" use="required" />   <attribute name="businessKey" type="uddi:businessKey" use="optional" /> </complexType>

3.1. Enkodieren von Informationen bindingTemplate Informationen wie man einen Service erreicht Beschreibung der Kommunikationsschnittstelle Zeiger auf ein oder mehrere tModel Strukturen

3.1. Enkodieren von Informationen Spezifikation der XML Struktur: <element name="bindingTemplate" type="uddi:bindingTemplate" /> <complexType name="bindingTemplate">   <sequence>     <element ref="uddi:description" minOccurs="0" maxOccurs="unbounded" />    <choice>       <element ref="uddi:accessPoint" />       <element ref="uddi:hostingRedirector" />     </choice>     <element ref="uddi:tModelInstanceDetails" />   </sequence>   <attribute name="serviceKey" type="uddi:serviceKey" use="optional" />   <attribute name="bindingKey" type="uddi:bindingKey" use="required" /> </complexType>

3.1. Enkodieren von Informationen tModel Technische Spezifikation des Webservices Unabhängig vom Business definiert Web Services verschiedener Firmen können auf das gleiche tModel verweisen Enthält nicht die technische Beschreibung selbst, nur den Link auf diese (z.B. auf eine WSDL-Datei)

3.1. Enkodieren von Informationen Spezifikation der XML Struktur: <element name="tModel" type="uddi:tModel" /> <complexType name="tModel"> <sequence>     <element ref="uddi:name" />     <element ref="uddi:description" minOccurs="0" maxOccurs="unbounded" />     <element ref="uddi:overviewDoc" minOccurs="0" />     <element ref="uddi:identifierBag" minOccurs="0" />     <element ref="uddi:categoryBag" minOccurs="0" />   </sequence>   <attribute name="tModelKey" type="uddi:tModelKey" use="required" />   <attribute name="operator" type="string" use="optional" />   <attribute name="authorizedName" type="string" use="optional" /> </complexType>

3.1. Enkodieren von Informationen publisherAssertion Beziehungsstruktur zwischen zwei businessEntity Strukturen Firmen können damit Geschäftsbeziehungen öffentlich machen Beide Firmen müssen ein pulisherAssertion Dokument anlegen

3.1. Enkodieren von Informationen Spezifikation der XML Struktur: <element name="publisherAssertion" type="uddi:publisherAssertion" /> <complexType name="publisherAssertion">   <sequence>    <element ref="uddi:fromKey" />     <element ref="uddi:toKey" />     <element ref="uddi:keyedReference" />   </sequence> </complexType>

3.2. Die API Es wird nach zwei Anwendungsszenarien unterteilt: Publishing-API (Register-API) Inquiry-API (Such-API) Der UDDI-Funktionsaufruf wird im <Body> einer SOAP-Nachricht an die Registry übertragen

3.2. Die API Allgemeiner Aufbau der Funktionsaufrufe <Funktionsname Version-ID [ Attribut ] Namespace-URN > <Argumentname_1>Wert_Argument_1</Argumentname_1> <Argumentname_2>Wert_Argument_2</Argumentname_2> . <Argumentname_n>Wert_Argument_n</Argumentname_n> </Funktionsname >

3.2.1. Inquiry API (Such-API) 10 Operationen zum durchsuchen der Registry: find_business - Zum Auffinden von Informationen über Unternehmen find_service - Zum Auffinden von spezifischen Service find_binding - Zum Auffinden von spezifischen Bindungen innerhalb eines businessService find_tModel - Zum Auffinden von tModel Informationsstrukturen find_relatedBusinesses - Zum Auffinden von Informationen über businessEntity Registrierungen, die in Beziehung stehen zur UUID der übergebenen businessEntity get_businessDetail - Zum Erhalten der vollständigen Unternehmensinformation get_businessDetailExt - Zum Erhalten erweiterterer Informationen über ein Unternehmen get_bindingDetail - Zum Erhalten der vollständigen Information über ein bindingTemplate get_serviceDetail - Zum Erhalten aller Details eines businessService get_tModelDetail - Zum Erhalten aller Details eines tModels

3.2.2. Publishing API (Register API) 16 Operationen um die Registryinformationen zu verwalten: get_authToken - Erhalt eines Authorisationstokens (das Äquivalent zu einem Login) discard_authToken - Fallenlassen eines Authorisationstokens save_business, save_service, save_binding, save_TModel - Neu, speichern oder updaten der Strukturen delete_business, delete_service, delete_binding, delete_TModel - Löschen der Strukturen add_publisherAssertions - Zufügen von Relationsbeziehungen zwischen Unternehmen delete_publisherAssertions - Löschen der Relationsbeziehungen zwischen Unternehmen get_assertionStatusReport - Liefert einen Status Report, der die Unternehmensbeziehungen und Status Information enthält get_publisherAssertions - Liefert eine Liste aller Unternehmensbeziehungen set_publisherAssertions - Speichert eine Liste aller Beziehungen ( Überschreibt eine bereits existierende Liste) get_registeredInfo - Liefert eine Zusammenfassung der Information

3.3. UDDI und SOAP Zugriff auf die UDDI-Registry mittels SOAP

4. UDDI Tools Nutzung von Webfrontends: HP Registry Composer: https://uddi.ibm.com/ubr/registry.html https://uddi.ibm.com/testregistry/registry.html (zum testen) http://uddi.microsoft.com ... HP Registry Composer: Java Tool um mit Registries zu interagieren JUDDI und UDDI4J Opensource Produkte die das Erstellen eigener Frontends mit Java ermöglichen IBM Web-Services Toolkit Viele nützliche Tools zum arbeiten mit Web Services, unter anderem auch ein UDDI Registry-Server Microsoft Visual Studio .NET, UDDI Software Development Kit

5. Sicherheit, Alternativen, Nachteile

5.1. Sicherheit Sicherheitsmodell nur auf Anbieterseite Übertragungssicherheit Veränderungen an der Registry nur über SSL und https Aufbau der Vertrauensbasis im Vorfeld (Austausch von Geschäftsadressen (Abhängig vom Operator) Authentication Token: Von Operator-Site vergeben Werden nur von vergebender Operator-Site akzeptiert Per-account Space Limits Operator legt diese fest Individuell vereinbar Standartwerte z.B.: 1 businessEntity pro Benutzer 4 businessService pro businessEntity 2 bindingTemplates pro businessService 10 tModels pro Benutzer

5.2. Alternative Web Service Inspection Language Von Microsoft und IBM Keine Registrierung, statt dessen „Inspection.wsil“ im root Verzeichnis der Domain gelagert

5.3. Nachteile Sicherheit schwer zu gewährleisten Pflege der Datenbank jeder kann sich als Firma ausgeben Schwieriges und aufwendiges Überprüfen wäre notwendig Pflege der Datenbank Veraltete Einträge Ungültige Einträge Meist nur Firmeninformationen, keine Services

6. Zusammenfassung UDDI bietet die Möglichkeit, über eine Operator-Site eine weltweite Präsenz zu erreichen UDDI setzt auf XML und SOAP auf UDDI definiert XML-Datenstrukturen zur Beschreibung von Unternehmensprofilen und Web-Dienst-Schnittstellen UDDI definiert API für die Erzeugung von Unternehmenseinträgen und zu deren Abfrage UDDI ermöglicht es Kunden, sich an die Schnittstelle IHRES Dienstes anzupassen UDDI bietet ein gewisses Minimum an Sicherheit