Architektur von Web- Informationssystemen. © Prof. T. Kudraß, HTWK Leipzig Techniken zur DB-Server- Anbindung Client-Seite Java Applet ActiveXPlugInCGISSIServer.

Slides:



Advertisements
Ähnliche Präsentationen
DI Christian Donner cd (at) donners.com
Advertisements

Be.as WEB Technologie
E-Commerce Shop System
Seminar Internet Technologien SS 98
Semesterarbeit von Dieter Lorenz, Sebastian Galenski, Stephan Bury
Java-Servlets Gliederung: Allgemeine Informationen zu Servlets
Webinterface für eingebettete Systeme in Dual-Server-Architektur
Architektur von Web- Datenbanksystemen. © Prof. T. Kudraß, HTWK Leipzig Schichtenarchitektur Aufteilung einer Web-DB-Anwendung in verschiedene Schichten.
Basis-Architekturen für Web-Anwendungen
Kurze Einführung in ASP
Übung 5 Mehrstufige Client/Server-Systeme mit Enterprise Java Beans
Datenbankzugriff im WWW (Kommerzielle Systeme)
Bastian Cramer, Universität Paderborn Entwurfsmuster für Webanwendungen Projektgruppe: Generierung von Webanwendungen aus visuellen Spezifikationen.
Tomcat Web-Server installieren
NATURAL Web-Integration 1 / 27/28-Feb-98 TST NATURAL Web-Integration Arbeitskreis NATURAL Süd Theo Straeten SAG Systemhaus GmbH Technologieberater Stuttgart.
Seminar: XML für Fortgeschrittene Referent: Katrin Apel
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Microsoft Windows 2000 Terminal Services
Information und Technik Nordrhein-Westfalen Single Sign On mit CAS Düsseldorf, Single Sign On für Webanwendungen am Beispiel von CAS.
Prof. Dr. T. Kudraß1 Internet-Datenbanken. Prof. Dr. T. Kudraß2 Historie des WWW Grundlage Internet –Entwickelt Ende der 60er Jahre vom US-Militär (ARPA-Net)
Oracle PL/SQL Server Pages (PSP). © Prof. T. Kudraß, HTWK Leipzig Grundidee: PSP – Internet-Seiten mit dynamischer Präsentation von Inhalten durch Einsatz.
Anwendungen. © Prof. T. Kudraß, HTWK Leipzig Historie des WWW Grundlage Internet – Entwickelt Ende der 60er Jahre vom US-Militär (ARPA-Net) – Technische.
Oracle WebServer - Einführung. © Prof. T. Kudraß, HTWK Leipzig Oracle Web Application Server HTML WebServer ® File system Static HTML PL/SQL Packages.
Spezielle Aspekte der Anbindung von Datenbanken im Web.
Anwendungen. © Prof. T. Kudraß, HTWK Leipzig Historie des WWW Grundlage Internet – Entwickelt Ende der 60er Jahre vom US-Militär (ARPA-Net) – Technische.
Architektur von Web- Datenbanksystemen. © Prof. T. Kudraß, HTWK Leipzig 2 Schichtenarchitektur Aufteilung einer Web-DB-Anwendung in verschiedene Schichten.
Hassan Bidani Jallal Alami Rahmouni FH Wiesbaden
Struts Seminar Javabasierte Webanwendungen. Tobias Kutzler2 Überblick Historie Was ist Struts? Model Controller View Zusammenfassung.
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
Introducing the .NET Framework
Vorlesung Datenschutz, FB Informatik, Universität Dortmund, SoSe Übung/Hausaufgabe Cookies – Betrachtung aus der Sicht des Datenschutzes Was geht.
Sicherheit von mobilem Code Hauptseminar: Sicherheit in vernetzten Systemen Sicherheit von mobilem Code Oliver Grassow.
Lehre, Studium, Forschung LSF Software-System HIS-GX ist eine Webanwendung für:L ehre, S tudium und F orschung bietet vielfältige Funktionalitäten für.
Seite Common Gateway Interface. Konzepte. Übersicht 1Einleitung 2Was ist CGI? 3Wozu wird CGI verwendet? 4Geschichtlicher Überblick 5Grundvoraussetzungen.
Interaktion mit Externen Diensten Carsten Schmidt/Andreas Schlesinger.
PHP Pakete und Beispiele Webengineering Robert Lemke.
M A P K I T Management eines J2EE basierten eCommerce Systems am Beispiel des ATG Dynamo Applikationsservers und BMC Patrol als Managementframework.
Systementwicklungsprojekt:
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
... und alles was dazugehört
Einführung Servlets/JSPs
Learning By Doing Thema 1: Dynamische Webseiten und Online Datenbanken (Jarka Arnold) Thema 2: Simulationen, Sound, Schnittstellen (Aegidius Plüss) Thema.
Aichinger Christian, Strasser Jürgen. Inhalt JSF EJB Praxis - Integration.
Bedeutung von Internet-Technologien
Your name Bedeutung von Internet- Technologien Gruppe 1 Andreas Feuerstein Philipp Hochratner Christian Weinzinger.
Vergleich verschiedener Konzepte für das Software Engineering Praktikum.
CGI (Common Gateway Interface)
Programmierprojekt Java Server Pages
Java Server Pages Sergej Keterling
Management- und Web Services- Architekturen
Web-Design: Architektur
Datenanbindung in Webapplikationen
Aufzeichnung von Usability-Daten im www. Client-Side Log : automatisch (maschinell) generiertes Protokoll Client : Rechner mit dem Browser des Users Server:
W W W - World Wide Web. Das World Wide Web kommt aus dem Englischen und bedeutet ‚Weltweites Netz‘ ist ein über das Internet abrufbares Hypertext-System.
Online GIS Online GIS – Der Nutzer Matthias Hofschen, ESRI Germany ESRI EUROPEAN USER CONFERENCE.
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Stundenplanung Programm zur Stunden- und Zimmerplanung auf der Basis von Datenbanken und unter Berücksichtigung von Mehrfachnutzung im (lokalen) Netz (Internet.
->Prinzip ->Systeme ->Peer – to – Peer
Datenbanken im Web 1.
Webserver Apache & Xampp Referenten: Elena, Luziano und Sükran
1 Einführung TOMCAT Entwicklung Technischer Informationssysteme SS 2003 Florian Müller.
Java Server Pages Technologie zur Erzeugung dynamischer Webseiten basierend auf Java-Servlets Blockseminar Wintersemester 2001/2002Jochen Pfeiffer Seite.
J2EE-Motivation(I) Anforderungen an heutige Software u.a.:
WINLearn Technische Umsetzung. Basistechnologie Oberfläche in HTML JSP (JavaServerPages) zur Datenauswertung Datenhaltung: Datenbank oder Filesystem JDBC.
1 JavaServer Pages Stephan Baldes JavaServer Pages Einführung
Optimierung von Geschäftsprozessen durch Webformulare und Webworkflow Rainer Driesen Account Manager.
, Claudia Böhm robotron*SAB Anwendungsentwicklung mit dem Java und XML basierten Framework robotron*eXForms Simple Application Builder.
IT-Dienstleistungen E-Learning Systeme Content Management 1 Fallbeispiel ILIAS: Das Repository-Objekt-Plugin „Centra“
Dynamische Webseiten CGI & co. © CGI - Lösung für alle ? Ja CGI kann alles tun, was man für Anwendungen braucht flexibel (beliebige.
© 2008 TravelTainment The Amadeus Leisure Group Webanwendungen mit Java - HttpServlets 17.Dezember 2010 Sebastian Olscher Erstprüfer: Hon.-Prof. Dr. H.
 Präsentation transkript:

Architektur von Web- Informationssystemen

© Prof. T. Kudraß, HTWK Leipzig Techniken zur DB-Server- Anbindung Client-Seite Java Applet ActiveXPlugInCGISSIServer API ASPJava Servlet JSP Server-Seite DB-Server SQLJ JDBC ODBC Generierungsmethode HTML-Generierende Applikation HTML/XML- Erweiterung

© Prof. T. Kudraß, HTWK Leipzig Anforderungen an eine DB-Server- Anbindung Integrierte Benutzerschnittstelle – Verschiedene Medientypen – Browser-Darstellung, keine proprietären Formate Interaktivität – erfordert zustandswahrende Verbindung Konsistenz und Datenintegrität Performance Sicherheit – Programme, die von Web-Server geladen werden Skalierbarkeit Offenheit – Konflikt mit Performance (Java vs. Microsoft)

© Prof. T. Kudraß, HTWK Leipzig Web-DB-Anbindungsarchitekturen

© Prof. T. Kudraß, HTWK Leipzig Common Gateway Interface (CGI) Prinzip: Client (Anwender) Server-Rechner HTML-Datei mit Formular Daten- bank WWW- Server automatisch erzeugte HTML-Datei CGI- Skript automatisch erzeugte HTML-Datei Formular abschicken übertragen CGI-Skript aufrufen HTML-Datei übertragen DB abfragen Abfrage-Report der DB auswerten HTML-Datei aus Abfrage-Report erzeugen

© Prof. T. Kudraß, HTWK Leipzig CGI Bewertung Vorteile: – Unterstützung durch alle WWW-Server – Anforderungsspezifisch programmiert – schnell und flexibel Nachteile: – Pro Interaktion Start eines CGI-Prozesses / Aufbau einer DB- Verbindung (Verbesserung FastCGI) – Kein Transaktionskonzept zwischen Client und WWW-Server, Problem der Realisierung von Zuständen – Logische Formular-Eingabefehler erst im CGI-Programm erkannt – Sicherheit – Aufwendige Programmerstellung – Formatierung des Dokuments problematisch, da generiert

© Prof. T. Kudraß, HTWK Leipzig Server Side Includes (SSI) Prinzip: – Erweiterung der Funktionalität von Web Servern – SSI = dynamische HTML-Dokumente, angereichert mit speziellen Steuerungsbefehlen in HTML-Syntax und DB-Zugriffsfunktionalität (z.B. Anzeige aktueller Uhrzeit oder Börsenkurse) – Ebenfalls möglich: Aufruf anderer Anwendungen (z.B. CGI-Programme, BS- Kommandos) und Erzeugung eines neuen Prozesses Verarbeitung regulärer HTML-Formulare

© Prof. T. Kudraß, HTWK Leipzig Active Server Pages (ASP) HTML Dokument mit eingebetteten Anweisungen in VBScript oder JScript ASP Bestandteil des Internet Information Server große Funktionalität durch Mächtigkeit der Skript- Sprachen (aber geringer als Java/C++) Einbettung von SQL in Skriptsprache (DB-Zugriff über ODBC und ADOs) Session Management mit Hilfe von Session-IDs (von Cookies übertragen) Zugriff auf Formular- und Umgebungsvariablen

© Prof. T. Kudraß, HTWK Leipzig Java Servlets Einordnung: – als serverseitige Applets bezeichnet – Pendant zu den Server-Erweiterungs-APIs von MS und Netscape – Bestandteil des JDK 1.2 (somit kompatibel mit vielen Web- Server-Herstellern) Voraussetzung – Integration einer JVM in den Web-Server bzw. Kooperation mit einem Zusatzprozeß Vorteile: – Plattform- und herstellerunabhängige Erweiterung von Web- Servern möglich (durch Standard Java Extension API) – Dynamisches Binden möglich (Java-Klassenlader) Hinzufügen und Entfernen von Moduln ohne Neustart des Servers

© Prof. T. Kudraß, HTWK Leipzig Web/DB-Anbindung über Java Servlets Weitere Vorteile alle Möglichkeiten der Sprache Java Web-ClientWeb-Server Servlet-Engine DB-Server Java- Klassenbibliothek HTTP JVMJVM JDBC gleiches Sicherheitskonzept wie Java (Security Manager), verhindert Ressourcenmißbrauch Leistung: bleiben im Speicher des Servers, DB-Verbindung nur einmal nötig Lastverteilung: Aufruf anderer Servlets möglich mehr Programmieraufwand, Ent- wicklungsumgebungen verfügbar

© Prof. T. Kudraß, HTWK Leipzig Java Server Pages (JSP) Weiterentwicklung des SSI-Mechanismus und Erweiterung des Servlet-Konzepts mischt statisches HTML mit dynamischem Code (Anwendungslogik) Anwendungslogik: Java Beans, JDBC-Objekte, Enterprise Java Beans (EJB), RMI-Objekte (Remote Method Invocation) - aufrufbar aus JSP-Seite strikte Trennung von Design/Präsentation einer Seite von deren Inhalt bzw. Logik zusätzliche JSP-Engine muß installiert werden

© Prof. T. Kudraß, HTWK Leipzig Betrachtung der server-seitigen Ansätze Bewertung von Funktionalität und Architektur Realisierung von Zuständen Sicherheits-Aspekte

© Prof. T. Kudraß, HTWK Leipzig Realisierung von Zuständen Zustandslosigkeit – HTTP-Kommunikationsverbindung zwischen Web-Browser und Web-Server nur während einer Anfragebearbeitung – Folge: Transaktionen beschränkt auf diese Zeitspanne (jedesmal neue DB-Verbindung herstellen) – Bedarf zusätzlicher Techniken zur Realisierung kontextabhängiger Mehrschritt-Arbeitsgänge (z.B. Führen eines Warenkorbes) Realisierung von Zuständen durch – Session IDs (identifiziert Web-Sitzung) – User IDs (Benutzeridentifikation für personalisierte Angebote) Techniken – HTTP-Cookies – URL-Kodierung – Formularvariable (Hidden Fields)

© Prof. T. Kudraß, HTWK Leipzig Formularvariable Zuweisung einer eindeutigen Kennung an den Benutzer während der Interaktion mit dem WWW-Server (z.B. in Form einer ID) Eintrag der Session-ID als versteckte Eingabevariable ins HTML-Formular, z.B. Nutzung der Session-ID für die weitere Kommunikation (z.B. Bestimmung des Warenkorb-Besitzers bei langen Vorgängen über diese ID)

© Prof. T. Kudraß, HTWK Leipzig Formularvariable Bewertung Vorteil: – Unabhängig von Browsertyp und Browserkonfiguration Nachteile: – Session-ID muß in allen HTML-Dokumenten des Benutzers bei einem Vorgang und allen Folgeaktionen einkodiert sein – Erfordert dynamische Erzeugung von HTML- Dokumenten Belastet den Web-Server Erschwert die Anwendungsentwicklung

© Prof. T. Kudraß, HTWK Leipzig HTTP-Cookie Unabhängig vom eigentlichen HTML-Dokument Bestandteil der Meta-Information zu einer HTML-Seite – Vom Server zum Browser übertragen – Temporär im Browser gespeichert Beispiel: Set-Cookie: KNR=4711;Version=1;Path=/katalog; MAX-Age=1800 – Übertragung des Cookies KNR=4711 (Kunden-Nr.) bei jeder Dokumentenanforderung im Verzeichnis /katalog (falls Cookies unterstützt werden) – Max-Age definiert die Verfallsdauer (im Beispiel max. Sitzungsdauer 1800 Sekunden)

© Prof. T. Kudraß, HTWK Leipzig HTTP-Cookie Bewertung Vorteile: – Automatische Unterstützung durch den Browser – Einsatz unanhängig von der Kodierung in einer HTML-Seite – Bei gleichzeitiger Verwendung mehrerer Cookies Speicherung vieler Informationen möglich – Anwendung bei E-Shops: Speichern von Waren- korbinhalten Nachteile – Nicht von allen Browsern unterstützt – Benutzer kann Cookies abschalten bzw. verweigern

© Prof. T. Kudraß, HTWK Leipzig Sicherheit Sicherheit = Übertragungssicherheit + Zugriffsschutz Zugriffskontrolle: – HTTP-Authentisierung: Einschränkung des Zugriffs auf bestimmte Unterverzeichnisse oder den ganzen Server für bestimmte Benutzer – Einschränken des Verbindungsrechts auf bestimmte Adressen / Domains (Konfiguration des Web- Servers) – Werkzeugunterstützung für ID-Wechsel (Web-User vs. DB-Client)

© Prof. T. Kudraß, HTWK Leipzig Sicherheit (Forts.) Übertragungssicherheit für Passwörter u.a. vertrauliche Daten – Standard: Secure Socket Layer (SSL) Grundlage RSA-Verfahren Benötigt Zertifikat auf Seiten des Web-Servers Client entscheidet über Übertragung, falls Server nicht zertifiziert – Nachteil von SSL: kurze Schlüssellängen, somit besondere Sicherheitsanforderungen erfüllt – Erfordert Speziallösungen: z.B. für Online-Banking eigene Sicherheitsprotokolle, basierend auf Java