Verteilte Datenbanksysteme SS2005 Masterstudiengang Informatik HS-Harz
Roadmap 1. Sicherheitsprobleme WebServices 2. a) XML- b) Signature XML- Encryption Anwendung im E-Government Anwendung im E-Commerce 3. OSCI High-Level 4. Security Frameworks 5. SAML XACML
Roadmap 1. Sicherheitsprobleme WebServices 2. a) XML- b) Signature XML- Encryption Anwendung im E-Government Anwendung im E-Commerce 3. OSCI High-Level 4. Security Frameworks 5. SAML XACML
Mensch-Maschine Kommunikation Sicherheitsziele Authentizitaet Sicherheitsziele Vertraulichkeit Integritaet Nicht-Abstreitbarkeit
Mensch-Maschine Kommunikation Sicherheitsmassnahmen Sicherheitsziele Sicherheitsmassnahmen Authentizitaet Vertraulichkeit Integritaet Nicht-Abstreitbarkeit Signatur Verschluesselung Signatur/Hashfunkt. Signatur/Zeitstempel
Maschine-Maschine Kommunikation WebServices im Einsatz verwenden: SOAP WSDL WebService C WebService D WS-Frameworks WebService-Sicherheit = XML-Sicherheit WebService A? WebService Produktsuche B Benutzer Anwendung Aktienkurs
Ausgangsbasis und Probleme WebServices gut geeignet für verteilte Aufgaben entworfen für Maschine-Maschine-Kommunikation menschl. Autor.-Komponente fällt weg (GUI / Zertifikate) Spezifikation der WebServices beinhaltet nur die zur Kommunikation notwendigen Formate & Infrastrukturen keine Definition von Si-Massnahmen / - Zielen Sicherheit hängt vom verwendeten Transportprotokoll ab kein Standard für die sichere Kommunikation Gegenmaßnahmen: Neuer Standard der OASIS SOAP-Erweiterungen Nachrichten-Integrität Nachrichten-Vertraulichkeit Authentizität
Grenzen des Secure Socket Layer Protokolls SSL Sicherung auf Transportschicht unsicher sicher WebService A SSL SSL sicher Benutzer SSL kein Zertifikats- austausch Probleme mit SSL: - Ende-zu zu-ende Verschluesselung - sicher nur bis zum Endpunkt WebService B -> > ungeeignet fuer komplexere WebService-Architekturen! WebService C
Roadmap 1. Sicherheitsprobleme WebServices 2. a) XML- b) Signature XML- Encryption Anwendung im E-Government Anwendung im E-Commerce 3. OSCI High-Level 4. Security Frameworks 5. SAML XACML
Sicherheit vereinbart im Header SOAP over HTTP-Binding HTTP SOAP Envelope SOAP Header SOAP Body
Erweiterungen von XML XML-Signature 2002 vom W3C standardisiert Umsetzung der digitalen Signatur Sicherheitsziele: Integrität der Nachricht Authentizität des Absenders Signaturraum: kompletter XML-Baum (XML-Dokument) einzelne Elemente oder Anlagen (z.b. Bilder) keine Schlüsselmanagement-Aufgaben Beschreibung des Schlüssels wird mitgeschickt
Sicherheit vereinbart im Header SOAP-Nachricht Aufbau Container fuer XML-Daten einzelne Bloecke SOAP Envelope SOAP Header Header-Element Header-Element Sicherheitsinformationen Aufgabe: verwalten und absichern des XML-Bodys SOAP Body Body-Element XML-Nachricht Body-Element HTTP, SMTP
Sicherheit vereinbart im Header SOAP-Nachricht Header SOAP Envelope Hinzufuegen von Identitaet -> bereit fuer WS- Security z.b.: Schuessel Zertifikate Assertions Kerberos Tickets SOAP Header Header-Element Security-Token Referenz Schluesselinfos Signaturmethode SOAP Body Sicherheitsinformationen Aufgabe: verwalten und absichern des XML-Bodys XML-Nachricht
XML-Signature in der Praxis Signierte Kauforder <PurchaseOrder id= po1 > <SKU>12356</SKU> <Quantity>12356</Quantity> <Signature xmlsn= http://www.w3.org/2000/09/xmldsig#2> </KeyInfo> </Signature> </PurchaseOrder> <SignedInfo> <Reference URI= #po1 /> </SignedInfo> <SignatureValue>5Ajz8Ds539iaP4sdA </SignatureValue> <KeyInfo> Schlüsselinfos z.b.:oeffentlicher S. + Zertifikat Referenz auf XML-Knoten, XML-Dokument oder andere Signatur
Detached Signatur Signature-Referenzierung XML-Dokument <Signature> <Reference> Bild computer.jpg XML-Nachricht Textnachricht produkt.xml beschreibung.txt
Erweiterungen von XML XML-Encryption 2002 vom W3C standardisiert Syntax zur Verschlüsselung Sicherheitsziele: Vertraulichkeit der Nachricht Verschlüsselungsraum: kompletter XML-Baum (XML-Dokument) einzelne Elemente oder Anlagen (z.b. Bilder) keine Schlüsselmanagement-Aufgaben Beschreibung des Schlüssels wird mitgeschickt PKI: öffentlicher Schlüssel des Empfängers Hybridverfahren: erst wird ein Sitzungsschlüssel ausgehandelt und dieser dann per PKI ausgetauscht
Normalisierung der XML-Dokumente Canonical XML Methode zur Generierung eines einheitlichen XML-Dokumentes verhindert syntaktische Inkonsistenzen schafft standardisierte Form für das Signieren und Verschlüsseln Einsatz von Prozessoren z.b. Entfernen von Whitespaces um Hashfunktionen anwenden zu können (bei XML-Signature)
Roadmap 1. Sicherheitsprobleme WebServices 2. a) XML- b) Signature XML- Encryption Anwendung im E-Government Anwendung im E-Commerce 3. OSCI High-Level 4. Security Frameworks 5. SAML XACML
Sicherheit im E-Government Open Services Computer Interface (OSCI) Ziel des E-Government: mehr Bürgernähe und Vertrauen durch schnelle, transparente und sichere Kommunikation Sicherheitsinfrastruktur für Vertraulichkeit (Ende-zu-Ende Verschlüsselung mit XML-Encryption) Authentizität (elektronische Signatur mit XML-Signature) Integrität (elektronische Signatur XML-Signature) Verbindlichkeit (Laufzettel und Quittungen beidseitig) Zentrale Rolle spielt der Intermediär Zwischenspeichern von Nachrichten asynchrone Kommunikation Fortschreiben des Laufzettels ohne Zugriff auf Inhaltsdaten erbringt Mehrwertdienst (Signaturprüfung) alle Sicherheitsmechanismen von OSCI sichergestellt keine Si-Anforderungen an darunterliegende Transportprotokolle
Intermediaer erbringt Mehrwertdienste OSCI Infrastruktur Postfaecher Unternehmen Einwohnerwesen Buerger Intermediaer Finanzwesen Behoerde Trustcenter Kfz- Wesen
Sicherheit im E-Government OSCI - II medienbruchfreie Weiterverarbeitung der Daten XML Nutzung von SOAP als Transportprotokoll Prinzip des doppelten Umschlags Intermediär == sicherer Mailserver hält Postfächer für Empfänger, muss sich vorher authentifizieren Postfach + Identität mit X.509-Zertifikat an K-Partner gebunden (SigG) überträgt jede Nachricht (falsche Signatur, ohne Verschlüsselung usw.) Empfänger entscheidet den weiteren Verwendungsweg Laufzettel erweitert um Prüfprotokoll (Ergebnisse der Sig- Prüfungen)
Sicherheit im E-Government OSCI Nachrichtenstruktur
Sicherheit im E-Government OSCI Ebenen Ebene Beispiele Anforderungen Geschäftsvorfälle Ummeldung Steuererklärung stand. Austauschformat gesetzeskonform OSCI-Basisfunktionen Infrastruktur Produkte Signatur / Verschlüs. Transport Verteilung der Anw. Schlüsselverteilung Implementierung von Kernel, Intermediär konform zu SigG produktunabhängig interoperabel, sicher performant OSCI-konform
Roadmap 1. Sicherheitsprobleme WebServices 2. a) XML- b) Signature XML- Encryption Anwendung im E-Government Anwendung im E-Commerce 3. OSCI High-Level 4. Security Frameworks 5. SAML XACML
Sicherheit im E-Commerce Security Assertion Markup Language (SAML) OASIS-Standard (IBM, SAP, Nokia, Sun, kein MS) XML-Framework zum Austausch von Sicherheitsinformationen definiert Dokumentstruktur von Si-Infos zwischen Services erlaubt Interaktion zwischen sicheren Services benutzt Sicherheitsbehauptungen (assertions) stellt einen Schablone dar für den Entwurf von skalierbaren und förderierten Systeme mit Webinfrastruktur XML-basiertes Request/Response-Protokoll Use-Cases: 1. Single Sign On 2. Distributed Transactions 3. Authorization Services
SAML Use Cases Szenario Single Sign On Authentifikation Quellwebseite Benutzer nutzen der sicheren Ressourcen? Bestaetigungen/ Assertions Zielwebseite
SAML Konzepte Bestätigungen (Assertions) Bestätigung: Informationspaket das ein oder mehrere Statements enthält. Ein XML-Schema enthält das festgeschriebene Format. sind ein Fakt über eine Person oder Programm Assertion Statements Authentifizierung Attribute Autorisierungsentscheidung
Austausch von Sicherheitsinfos SAML Bestätigung Struktur Authentifizierung Authentifizierung: eine Bestätigungsinstanz bestätigt das ein Subjekt zu einer bestimmten Zeit authentifiziert wurde ( Master Giz hat sich an der Domain www.hs-harz.de authentifiziert) Attribute Attribute: bestätigt das zu einem Subjekt eine bestimmte Eigenschaft gehört ( Master Giz gehört zur Studentenschaft ) Autorisierungsentscheidung Autorisierungsentscheidung: bestätigt den Zugriff eines Subjektes auf eine Ressource mit bestimmten Zugriffsrecht
Sicherheit vereinbart im Header SAML SOAP over HTTP-Binding HTTP SOAP Envelope SOAP Header SOAP Body SAML Request/Response
SAML Protokoll um Bestätigung zu erhalten Asserting Party (Trusted Issuing Authority) Quellwebseite Bestaetigungen/ Assertions SAML Request SAML Query SAML Response SAML Assertion Zielwebseite Relying Party
Beispiel für ein Authorization Statement <saml:assertion...> <saml:authenticationstatement AuthenticationMethod="password" (By means M) AuthenticationInstant="2001-12-03T10:02:00Z"> (At time T) <saml:subject> (Subject S) <saml:nameidentifier SecurityDomain= hs-harz.de" Name= Master Giz" /> <saml:confirmationmethod> http://...core-25/sender-vouches </saml:confirmationmethod> </saml:subject> </saml:authenticationstatement> </saml:assertion>
Roadmap 1. Sicherheitsprobleme WebServices 2. a) XML- b) Signature XML- Encryption Anwendung im E-Government Anwendung im E-Commerce 3. OSCI High-Level 4. Security Frameworks 5. SAML XACML
Zugriffskontrolle per XML extensible Access Control Markup Language (XACML) spezifiziert von der OASIS (Organization for the Advancement of Structured Information Standards) schützt Inhalt vor unautorisierten Veränderungen beim Datenaustausch zwischen Unternehmen Erweiterter XML-Syntax zur gemeinsamen Dokumentennutzung Attribute und Tags beschreiben Inhalte unterstützt Firmen beim Erstellen und Ausrollen von Autorisierungsrichtlinien (authorization policies) Sun's XACML 1.0 Implementierung als Referenz
Zugriffsregeln definieren & abfragen Zugriffskontrolle mit XACML WebService 1.Zugriff auf Ressource 5. Zugriff er- lauben oder nicht Policy Enforcement Point (PEP) sensible Daten Benutzer 4. Response (Bestaetigung XACML) Policy Decision Point (PDP) 2. Request (XACML) 3.Checken der Richtlinien Richtlinie A Richtlinie B Richtlinie C XACML-Regeln
Literaturverzeichnis Rosenberg J. / Remy D. : Securing Web Services with WS-Security, SAMS Mai 2004 OASIS - Organization for the Advancement of Structured Information Standards http://www.oasis-open.org/home/index.php 10.06.2005
Fragen? Antworten! Vielen Dank für ihre Aufmerksamkeit! Secure WebServices Kontakt: tobias.giese@gmx.de Unterlagen: http://www.tobias-giese.de/secure-webservices.pdf