XML w bazach danych i bezpieczeństwie

Podobne dokumenty
XML w bazach danych i bezpieczeństwie

XML a relacyjne bazy danych. XML w bazach danych. Klasyfikacja wsparcia dla XML-a w bazach danych. XML a relacyjne bazy danych.

XML a relacyjne bazy danych. XML w bazach danych. Klasyfikacja wsparcia dla XML-a w bazach danych. XML a relacyjne bazy danych.

XML a relacyjne bazy danych. XML w bazach danych. Klasyfikacja wsparcia dla XML-a w bazach danych. XML a relacyjne bazy danych.

XML w bazach danych, standardy wiążące dokumenty XML

EDI, XML i ochrona danych Przemysław Kazienko

Inżynieria biomedyczna

XML w elektronicznej wymianie danych, integracji aplikacji i bezpieczeństwie

XML w bazach danych, standardy wiaż ace dokumenty XML

XML w elektronicznej wymianie danych, integracji aplikacji i bezpieczeństwie

Spis treści. Przedmowa

Zdalna edycja i przeglądanie dokumentacji medycznej.

Generowanie dokumentów XML z tabel relacyjnych - funkcje SQLX

Rozproszone systemy internetowe. Bezpieczeństwo usług WWW

Relacyjne bazy danych a XML

Model semistrukturalny

XML w bazie danych IBM DB2

Nowoczesne zastosowania XML

1 XML w bazach danych

Liczba godzin 1,2 Organizacja zajęć Omówienie programu nauczania 2. Tematyka zajęć

Wykład I. Wprowadzenie do baz danych

XPath 2.0 / XSLT 2.0 / XQuery 1.0. Inne standardy związane z XML-em. XPath 2.0 XSLT 2.0. XPath2.0 funkcyjny język programowania

Rodzaje przetwarzania XSLT (1) XSLT część 2. Inne standardy związane z XML-em. Rodzaje przetwarzania XSLT (2) Zmienne. Zaawansowane możliwości XSLT

Informatyka (10) dr inż. Katarzyna Palikowska Katedra Transportu Szynowego i Mostów p. 4 Hydro

XML i nowoczesne technologie zarządzania treścią

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

Intro. I.Wojnicki, ZTB:XML ZTB: XML. Igor Wojnicki. Katedra Informatyki Stosowanej, Akademia Górniczo-Hutnicza w Krakowie.

Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych

Bezpieczeństwo dokumentów XML

1. Wymagania dla lokalnej szyny ESB

Bazy danych dokumentów XML wykład 1 wprowadzenie

Szkolenie autoryzowane. MS 6232 Wdrażanie bazy danych Microsoft SQL Server 2008 R2

Bazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI

Administracja i programowanie pod Microsoft SQL Server 2000

Kostki OLAP i język MDX

Elastyczna ochrona w elektronicznej wymianie danych

Rok akademicki: 2013/2014 Kod: ZZIP IN-s Punkty ECTS: 2. Kierunek: Zarządzanie i Inżynieria Produkcji Specjalność: Informatyka w zarządzaniu

Język XQuery jako narzędzie do integracji danych Oracle XML Data Synthesis

Podstawowe wykorzystanie Hibernate

INFORMATYKA Pytania ogólne na egzamin dyplomowy

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

JBoss: MetaMatrix, Mobicents, Seam, Rools, ESB

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

DMX DMX DMX DMX: CREATE MINING STRUCTURE. Tadeusz Pankowski

Hurtownie danych - przegląd technologii Robert Wrembel Politechnika Poznańska Instytut Informatyki Robert.Wrembel@cs.put.poznan.pl

XML-owe bazy danych ćwiczenia 1

Ramowy plan kursu. Lp. Moduły Wyk. Lab. Przekazywane treści

Projektowanie obiektowe oprogramowania Wykład 14 Architektura systemów (1), Interoperability Wiktor Zychla 2013

Hurtownie danych - przegląd technologii

TOPWEB SPSall Budowanie portalu intranetowego

BAZY DANYCH LABORATORIUM. Studia niestacjonarne I stopnia

Zadanie nr 4.5: Oprogramowanie bazodanowe. Lp. Zwartość karty Opis 1 Specyfikacja techniczna / funkcjonalna przedmiotu zamówienia

Operacja PIVOT w języku SQL w środowisku Oracle

Pojęcie systemu baz danych

XML W BAZACH DANYCH 1. WSTĘP

Systemy baz danych. mgr inż. Sylwia Glińska


Plan. Raport. Tworzenie raportu z kreatora (1/3)

T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15

Tomasz Grześ. Systemy zarządzania treścią

GML w praktyce geodezyjnej

Projekt: MS i CISCO dla Śląska

Wprowadzenie do baz danych

BAZY DANYCH. Co to jest baza danych. Przykłady baz danych. Z czego składa się baza danych. Rodzaje baz danych

Wybrane działy Informatyki Stosowanej

Bazy danych i strony WWW

Szyfrowanie danych w SZBD

Bazy Danych i Usługi Sieciowe

Programowanie obiektowe

KARTA KURSU. Przetwarzanie dokumentów XML i zaawansowane techniki WWW

TOPWEB Microsoft Excel 2013 i PowerBI Przygotowanie danych, analiza i efektowna prezentacja wyników raportów

Technologia informacyjna

Nowoczesne zastosowania XML

Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski. Bazy danych ITA-101. Wersja 1

emszmal 3: Eksport wyciągów do Reset2 R2fk SQL (4.xx) (plugin dostępny wraz z dodatkiem Biznes)

Porównanie systemów zarządzania relacyjnymi bazami danych

Oferta szkoleniowa Yosi.pl 2012/2013

Projektowanie obiektowe oprogramowania Wykład 14 Architektura systemów (1) Interoperacyjność Wiktor Zychla 2018

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle

LITERATURA. C. J. Date; Wprowadzenie do systemów baz danych WNT Warszawa 2000 ( seria Klasyka Informatyki )

Dostęp do baz danych z serwisu www - PHP. Wydział Fizyki i Informatyki Stosowanej Joanna Paszkowska, 4 rok FK

1 Wprowadzenie do J2EE

Autor: dr inż. Katarzyna Rudnik

Wykład XII. optymalizacja w relacyjnych bazach danych

AKADEMIA GÓRNICZO-HUTNICZA im. Stanisława Staszica w Krakowie. Wydział Geologii, Geofizyki i Ochrony Środowiska. Bazy danych 2

Wstęp. Opis ten dotyczy wydziałów orzeczniczych.

Funkcjonalność systemów zarządzania bazami danych przestrzennych w kartografii internetowej (PosrtgreSQL/PostGIS) Krzysztof Kuśnierek

Migracja do PostgreSQL za pomocą narzędzi Enterprise DB

2017/2018 WGGiOS AGH. LibreOffice Base

Przykładowy dokument XML

Rodzaje przetwarzania XSLT (1)

Usługi analityczne budowa kostki analitycznej Część pierwsza.

Bazy danych i usługi sieciowe

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Wprowadzenie do hurtowni danych

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi

Proces ETL MS SQL Server Integration Services (SSIS)

Transkrypt:

XML w bazach danych i bezpieczeństwie Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 1 / 20

Plan Bazy danych 1 Bazy danych XML w relacyjnych bazach danych XML-owe bazy danych 2 XML w bezpieczeństwie XML Signature XML Encryption Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 2 / 20

Bazy danych Klasyfikacja wsparcia dla XML-a w bazach danych (Relacyjna) baza danych ze wsparciem dla XML: konfiguracja struktur danych przy pomocy tabel i relacji, eksport i import danych w postaci dokumentów XML, struktura dokumentów XML pochodna relacyjnych struktur danych, zastosowanie: integracja, wymiana danych; XML-owa baza danych: przechowuje dokumenty XML, konfiguracja struktur danych przy pomocy DTD/XML Schema, indeksowanie elementów, atrybutów, wyrażeń XPath, wyszukiwanie z użyciem XQuery, zastosowanie: przechowywanie i przetwarzanie dokumentów strukturalnych. Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 3 / 20

Bazy danych Klasyfikacja wsparcia dla XML-a w bazach danych (Relacyjna) baza danych ze wsparciem dla XML: konfiguracja struktur danych przy pomocy tabel i relacji, eksport i import danych w postaci dokumentów XML, struktura dokumentów XML pochodna relacyjnych struktur danych, zastosowanie: integracja, wymiana danych; XML-owa baza danych: przechowuje dokumenty XML, konfiguracja struktur danych przy pomocy DTD/XML Schema, indeksowanie elementów, atrybutów, wyrażeń XPath, wyszukiwanie z użyciem XQuery, zastosowanie: przechowywanie i przetwarzanie dokumentów strukturalnych. Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 3 / 20

Bazy danych XML w relacyjnych bazy danych XML w relacyjnych bazach danych Korzyści: integracja aplikacji, wymiana danych, łatwe transformacje danych, prezentacja danych. Problemy: czy i jak przechowywać dokumenty XML w bazie danych? metody dostępu (zadawania zapytań), efektywność. Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 4 / 20

Bazy danych XML a relacyjne bazy danych XML w relacyjnych bazach danych Przechowywanie XML-a w relacyjnych bazach danych: elementy dokumentu XML jako pola tabeli bazodanowej (dokument rozłożony na czynniki pierwsze ), dokument XML w całości przechowywany w polu bazy danych. Sposoby wspierania XML-a przez systemy zarzadzania bazami danych: generowanie XML-a na podstawie zawartości bazy danych, wypełnianie zawartości bazy na podstawie zawartości dokumentu XML, specjalne indeksowanie pól zawierajacych XML, wbudowane parsery XML i procesory XSLT, integracja z serwerem WWW. Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 5 / 20

XML w Oracle Bazy danych XML w relacyjnych bazach danych Wsparcie dla XML w Oracle 10g (http://www.oracle.com/xml). Parsery XML dostarczane przez Oracle: pozwalaja na wykorzystanie XML-a we własnych aplikacjach korzystajacych z bazy, dostępne dla PL-SQL-a, Javy i C++. XML-SQL Utility: generowanie XML-a bezpośrednio z bazy przy pomocy specjalnych zapytań, wypełnianie bazy na podstawie zawartości dokumentu XML. Typ danych XMLType. Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 6 / 20

Bazy danych XML w Oracle XML-SQL Utility XML w relacyjnych bazach danych Eksport XML funkcja getxml() SELECT xmlgen.getxml( select * from emp ) FROM dual; <rowset> <row id= 1 > <empno>10</empno> <name>scott Tiger</name> <title>specialist</title> </row>... </rowset> Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 7 / 20

XML w Oracle Bazy danych XML w relacyjnych bazach danych XMLType specjalny typ danych: kolumny, tabele, perspektywy, zmienne,... indeksowanie zawartości XML, zapytania XQuery, kontrola poprawności strukturalnej względem XML Schema, przekształcenia XSLT. Specjalne operatory: extract, extractvalue, exisitsnode, transform, updatexml, XMLSequence. XPath Rewrite przekształcanie ścieżek XPath w równoważne konstrukcje SQL na wewnętrznej reprezentacji strukturalnej XMLType. Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 8 / 20

Bazy danych Tamino XML-owa baza danych XML-owe bazy danych Pierwszy serwer bazodanowy przechowujacy dane w XML-u. Komunikacja: za pośrednictwem protokołu HTTP, bezpośrednio przez URL, moduł X-Node, zapewniajacy integrację z innymi źródłami danych: ODBC, OLE DB, system plików. Platforma dla: aplikacji internetowych typu B2C, elektronicznej wymiany dokumentów: nowość: wsparcie dla XML Signature; systemów zarzadzania treścia: nowości: wersjonowanie, scalanie, indeksowanie dokumentów nie-xml. Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 9 / 20

Bazy danych XML-owe bazy danych Baza danych w Tamino Definicja tabeli XML Schema. Wiersz tabeli element z podelementami. Pole element z zawartościa (podelement wiersza). Referencja w XML Schema. Zapytanie w XQuery. Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 10 / 20

Bazy danych XML-owe bazy danych XML w bazach danych przeglad Relacyjne ze wsparciem Oracle 8i / 9i / 10g Microsoft SQL Server 2000 DB2, IBM Sybase ASE 12.5 XML-owe Tamino, Software AG TEXTML Server, InxiaSoft dbxml (open source) exist (open source) Xindice, Apache Software Foundation (open source) Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 11 / 20

Plan XML w bezpieczeństwie 1 Bazy danych XML w relacyjnych bazach danych XML-owe bazy danych 2 XML w bezpieczeństwie XML Signature XML Encryption Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 12 / 20

XML w bezpieczeństwie Standardy XML zwiazane z bezpieczeństwem Za Pawłem Radzińskim Podpisy XML Signature. Szyfrowanie XML Encryption. Zastosowanie: m.in. w Web services. Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 13 / 20

XML Signature XML w bezpieczeństwie XML Signature Podpis dokumentu XML-owego zapisany w postaci struktury XML-owej. Podpis umieszczany w elemencie Signature: w osobnym dokumencie (detached signature), dołaczonym do podpisywanego dokumentu (enveloped signature), zawierajacym podpisywane dane (enveloping signature). Możliwości XML Signature: podpisywanie fragmentów dokumentu XML, podpisywanie zasobów zewnętrznych (dostępnych poprzez URL), podpisy wielokrotne. Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 14 / 20

XML Signature przykład 1 (detached) Źródło: Kazienko, P., Co tam panie w XML-u?, Software 2.0, 6/2003 <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"> <SignedInfo> <CanonicalizationMethod Algorithm= "http://www.w3.org/tr/2001/rec-xml-c14n-20010315"/> <SignatureMethod Algorithm= "http://www.w3.org/2000/09/xmldsig#dsa-sha1"/> <!- w URI znajduje się wskazanie na podpisywane dane - tu zewnętrzne - <Reference URI="http://przyklad.pl/pliki/do-podpisu.xml"> <Transforms> <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#base64"/> </Transforms> <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/> <DigestValue>60NvZvtdTB+7UnlLp/H24p7h4bs=</DigestValue> </Reference> </SignedInfo> <!- zaszyfrowany skrót z SignedInfo - podpis -> <SignatureValue>OsH9A1jTNL...</SignatureValue> <KeyInfo><KeyValue><DSAKeyValue> <P>imup6lm...</P><Q>xDve3j7...</Q><G>NlugAf...</G> <Y>W7dOmH/v...</Y> </DSAKeyValue></KeyValue></KeyInfo> </Signature>

XML Signature przykład 2 (enveloped) <?xml version="1.0" encoding="utf-8"?> <Document> <Content>... </Content> <ds:signature> <ds:signedinfo> <ds:reference URI=""> <ds:transforms> <ds:transform Algorithm="http://www.w3.org/2000/09/xmldsig #enveloped-signature"/> </ds:transforms> </ds:reference> </ds:signedinfo>... </ds:signature> </Document>

XML w bezpieczeństwie XML Signature - XAdES XML Signature XadES - XML Advanced Electronic Signature Rodzina zaawansowanych formatów podpisu XML informacje pozwalajace na przedłużenie ważności podpisu, zgodność z Dyrektywa Parlamentu Europejskiego i Rady 1999/93/WE z dnia 13 grudnia 1999 r. w sprawie wspólnotowych ram w zakresie podpisów elektronicznych. Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 17 / 20

XML w bezpieczeństwie XML Encryption XML Encryption Cel: zagwarantowanie poufności danych w XML. Szyfrować można zarówno cały plik XML jak i jego części. <purchaseorder> <Order> <Item>book</Item> <Id>123-958-74598</Id> <Quantity>12</Quantity> </Order> <Payment> <CardId>123654-8988889-9996874</CardId> <CardName>visa</CardName> <ValidDate>12-10-2004</ValidDate> </Payment> </purchaseorder> Patryk Czarnik (MIMUW) 12 bazy danych, bezpieczeństwo XML 2007/08 18 / 20

XML Encryption przykład 1 (fragment) <PurchaseOrder> <Order> <Item>book</Item> <Id>123-958-74598</Id> <Quantity>12</Quantity> </Order> <Payment> <CardId> <EncryptedData Type= http://www.w3.org/2001/04/xmlenc#content xmlns= http://www.w3.org/2001/04/xmlenc# > <CipherData> <CipherValue>A23B45C564587</CipherValue> </CipherData> </EncryptedData> </CardId> <CardName>visa</CardName> <ValidDate>12-10-2004</ValidDate> </Payment> </PurchaseOrder>

XML Signature przykład 2 (cały dokument) <EncryptedData xmlns= http://www.w3.org/2001/04/xmlenc# Type= http://www.isi.edu/in-notes/iana/ assignments/media-types/text/xml > <CipherData> <CipherValue>A23B45C56</CipherValue> </CipherData> </EncryptedData>