Masterthesis .pdf

File information


Original filename: Masterthesis.pdf

This PDF 1.5 document has been generated by LaTeX with hyperref package / pdfTeX-1.40.14, and has been sent on pdf-archive.com on 05/03/2014 at 15:43, from IP address 91.141.x.x. The current document download page has been viewed 812 times.
File size: 715 KB (94 pages).
Privacy: public file


Download original PDF file


Masterthesis.pdf (PDF, 715 KB)


Share on social networks



Link to this file download page



Document preview


S-Watchdog: Richtlinienbasierte Zugriffsbeschränkung für
RDF-Stores
Masterarbeit zur Erlangung des akademischen Grades
Master of Science

Verfasser: Franz Brandstätter, BSc

Vorgelegt am FH-Masterstudiengang MultiMediaTechnology, Fachhochschule Salzburg

Begutachtet durch:
Dr. Sebastian Schaffert (Betreuer)
DI Dr. Simon Ginzinger, MSc (Zweitgutachter)

Salzburg, 25. November 2013

i

Eidesstattliche Erklärung
Hiermit versichere ich, Franz Brandstätter, geboren am 13. November 1987 in Wels,
dass ich die Grundsätze wissenschaftlichen Arbeitens nach bestem Wissen und Gewissen eingehalten habe und die vorliegende Masterarbeit von mir selbstständig verfasst
wurde. Zur Erstellung wurden von mir keine anderen als die angegebenen Quellen
und Hilfsmittel verwendet.
Ich versichere, dass ich die Masterarbeit weder im In- noch Ausland bisher in irgendeiner Form als Prüfungsarbeit vorgelegt habe und dass diese Arbeit mit der den
BegutachterInnen vorgelegten Arbeit übereinstimmt.

Salzburg, am 25. November 2013
Unterschrift

Franz Brandstätter

Personenkennzeichen

ii

Kurzfassung
Durch die Entwicklung des Semantic Webs werden große Mengen an Linked Data veröffentlicht und teils in RDF-Stores gespeichert und verwaltet. Damit auch schützenswerte
Daten als Linked Data in RDF-Stores veröffentlicht werden können, ohne unbefugten
UserInnen Zugriff auf diese zu geben, ist eine entsprechende Zugriffskontrolle notwendig. Zugriffsbestimmungen sollen dazu den Zugriff auf RDF-Daten fein granuliert für
bestimmte User einschränken.
Im Zuge dieser Arbeit wird eine Implementierung vorgestellt, welche, basierend auf
der offenen Ontologie PPO, eine fein granulierte Zugriffsbeschränkung als SAIL für Sesame bietet. Sesame ist ein Framework für RDF-Stores und lässt sich durch sogenannte
SAILs um zusätzliche Funktionalitäten erweitern. Für die Zugriffskontrolle muss damit
kein neues Vokabular eingeführt werden, da eine bereits etablierte, offene Ontologie
verwendet wird, welche die Anforderungen an dieses System deckt. Zugriffsrichtlinien
können mit Hilfe dieser Ontologie für Ressourcen, Statements und Kontexte definiert
(FGAC) und separat für die Aktionen Create, Read, Update und Delete (CRUD) spezifiziert werden. Diese Richtlinien können zudem sowohl für einzelne UserInnen als
auch für explizite und implizite Gruppen von Usern definiert werden, wodurch das
Zugriffskontrollmodell PBAC realisiert wird.
Bisherige Lösungen erfüllen diese Anforderungen nur unzureichend, weshalb in dieser
Arbeit ein neuer Lösungsansatz vorgestellt wird, um RDF-Stores fein granuliert vor
unbefugten Zugriffen zu schützen.
Schlagwörter: Zugriffskontrolle, RDF-Store, Linked Data, PBAC, FGAC

iii

Abstract
Due to the evolvement of the semantic web huge amounts of linked data get published
and, to some extent, stored and administered in RDF-Stores. To encourage publishment
of even sensitive data, a corresponding access control system is necessary to deny access
for unauthorised users. Policies should therefore restrict access to RDF-Data for certain
users providing fine grained access control (FGAC).
This thesis presents an access control system implemented as SAIL for Sesame based
on the open ontology PPO, which meets the requirements of this system. Hence there
is no need to introduce a new vocabulary as an already established one is used. Sesame
is a triplestore-framework that can be extended by so-called SAILs for additional functionalities. Using PPO, policies can be defined separately for resources, statements
and contexts (FGAC) as well as for create-, read, update- and delete-actions (CRUD). In
addition those policies can be specified for single users as well as for explicit an implicit
groups of users, which allows for the access control model PBAC.
Recent solutions fall short in fulfilling these requirements; therefore, this thesis presents
a new approach for an access control system for RDF-Stores.
Keywords: access control, RDF-Store, Linked Data, PBAC, FGAC

INHALTSVERZEICHNIS

iv

Inhaltsverzeichnis
1

Einleitung

1

2

Grundlagen

3

2.1

Die Entwicklung des Webs . . . . . . . . . . . . . . . . . . . . . . . . . . .

3

2.1.1

Web 1.0 — Read-Only-Web . . . . . . . . . . . . . . . . . . . . . .

3

2.1.2

Web 2.0 — Read-Write-Web . . . . . . . . . . . . . . . . . . . . . .

3

2.1.3

Web 3.0 — Semantic Web . . . . . . . . . . . . . . . . . . . . . . .

4

2.1.4

Web 4.0 — Symbiotic Web . . . . . . . . . . . . . . . . . . . . . . .

7

2.2

Resource Description Framework (RDF) . . . . . . . . . . . . . . . . . . .

7

2.3

Linked Data (LD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9

2.4

Linked Data Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

2.4.1

Apache Marmotta . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

2.4.2

Fuseki . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13

2.4.3

D2R Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13

2.4.4

4Store . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13

2.4.5

BigData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13

2.4.6

OpenLink Virtuoso . . . . . . . . . . . . . . . . . . . . . . . . . . .

13

Frameworks für Triple-/Quadstores . . . . . . . . . . . . . . . . . . . . . .

14

2.5.1

Sesame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14

2.5.2

Apache Jena . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

2.5.3

AllegroGraph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16

Zugriffsrichtlinien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16

2.6.1

Zugriffskontrollmodelle . . . . . . . . . . . . . . . . . . . . . . . .

17

Ontologien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

21

2.7.1

Kategorisieren von Ontologien . . . . . . . . . . . . . . . . . . . .

22

2.7.2

Ontologien zum Repräsentieren von Zugriffsbestimmungen . . .

23

2.5

2.6
2.7

3

Related Work

26

3.1

Zugriffskontrolle für Filesysteme . . . . . . . . . . . . . . . . . . . . . . .

26

3.2

Zugriffskontrolle für Datenbanken . . . . . . . . . . . . . . . . . . . . . .

26

3.3

Zugriffskontrolle für Webseiten, -Applikationen und SOAs . . . . . . . .

27

3.3.1

27

Webseiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

INHALTSVERZEICHNIS

3.4
4

5

6

v

3.3.2

Web-Applikationen . . . . . . . . . . . . . . . . . . . . . . . . . . .

28

3.3.3

Service Oriented Architectures (SOAs) . . . . . . . . . . . . . . . .

28

Zugriffskontrolle für Linked Data . . . . . . . . . . . . . . . . . . . . . . .

28

Analyse der Anforderungen

31

4.1

Anforderungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

31

4.2

Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32

Umsetzung und Evaluation

37

5.1

Parsen der Privacy Preferences (PPs) . . . . . . . . . . . . . . . . . . . . .

41

5.1.1

PPRestriction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

43

5.1.2

PPCondition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

44

5.1.3

PPAccessSpace . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

48

5.1.4

PPAccessControl . . . . . . . . . . . . . . . . . . . . . . . . . . . .

49

5.1.5

Priorität . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

52

5.1.6

Modellierung der Use Cases . . . . . . . . . . . . . . . . . . . . .

53

5.2

Verbindungsaufbau zwischen UserInnen und Triplestore . . . . . . . . .

60

5.3

Ausführen der Aktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

61

5.3.1

Verifizieren der Aktion . . . . . . . . . . . . . . . . . . . . . . . . .

62

5.4

Demo: Verwenden des Webservices . . . . . . . . . . . . . . . . . . . . . .

67

5.5

Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

69

5.5.1

Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

70

5.5.2

Komplexität und Skalierbarkeit . . . . . . . . . . . . . . . . . . . .

72

Diskussion und Ausblick

74

6.1

75

Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

A Vollständiger Pseudo-Code zur Verifizierung

87

1

1

EINLEITUNG

1

Einleitung

Seit Beginn der Entwicklung des Web 3.0 werden große Mengen an semantischen Daten im World Wide Web (WWW) veröffentlicht. Diese Daten lassen sich unter Einhaltung
gewisser Prinzipien miteinander verknüpfen, wodurch ein sogenanntes Linked-DataNetz entsteht. Durch das Anreichern der im WWW verfügbaren Daten mit semantischen Informationen, welche von Maschinen weitgehend verstanden werden können,
ergeben sich neue Möglichkeiten zur Nutzung dieser Daten. Durch das Verlinken der
Daten kann zusätzlich zu diesen expliziten Informationen implizites Wissen abgeleitet
werden, wodurch neue Informationen geschaffen werden.
Diese Daten werden häufig in sogenannten Resource Description Framework (RDF)-Stores
gespeichert, welche prinzipiell öffentlich zugänglich sind. Aus diesem Grund werden
in der Regel keine sensiblen Daten in solchen Datenbanken gespeichert, da diese bisher
nur unzureichend vor unbefugten Zugriffen geschützt werden konnten. Damit auch
schützenswerte Daten als Linked Data in solchen Stores gespeichert werden können,
um von den Vorteilen von Linked Data zu profitieren, ist eine entsprechende Zugriffskontrolle erforderlich.
Zur Steuerung einer solchen Zugriffskontrolle sollen im Zuge dieser Arbeit sogenannte
Privacy Preferences (PPs) definiert werden, welche ebenfalls als Linked Data im RDFStore gespeichert werden. Zur Formulierung solcher Richtlinien soll eine offene Ontologie (Linked Open Vocabulary (LOV)) wiederverwendet werden. Durch die Verwendung
einer solchen Ontologie wird eine mögliche Weiterverarbeitung der Daten durch etwaige weitere (Linked Data) Anwendungen ermöglicht.
„Reuse of existing terms is highly desirable as it maximises the probability
that data can be consumed by applications that may be tuned to wellknown vocabularies, without requiring further pre-processing of the data
or modification of the application.“ (Heath und Bizer 2011, S.61)
Basierend auf einer solchen Ontologie soll es zudem möglich sein, fein granulierte
Richtlinien zu definieren, mit welchen Zugriffe auf Ressourcen, Tripel und Kontexte
geregelt werden können. Dadurch soll die Rahmen dieser Arbeit entwickelte Zugriffskontrolle den Anforderungen an eine Fine Grained Access Control (FGAC) entsprechen.
Zusätzlich sollen die Privacy Preferences sowohl für einzelne UserInnen als auch für
implizite und explizite UserInnen-Gruppen erstellt werden können, wodurch die zu
entwickelnde Zugriffskontrolle neben FGAC auch Policy Based Access Control (PBAC)
bieten soll (siehe Abschnitt 2.6.1).
Damit Zugriffsrichtlinien sehr flexibel und entsprechend den Vorstellungen der Administratoren des Systems formuliert werden können, sollen diese Richtlinien separat
für die einzelnen Zugriffsarten definiert werden können. Dazu soll das Prinzip von
Create/Read/Update/Delete (CRUD) berücksichtigt werden, wonach Privacy Preferences

1

EINLEITUNG

2

beliebig auf die Zugriffsarten Create, Read, Update und Delete beschränkt werden können.
Das System soll zudem die Möglichkeit vorsehen, das Verfahren der Richtlinienverifizierung sowohl entsprechend nach dem Prinzip von Black-, als auch nach jenem von
Whitelisting durchzuführen, was zu einer erhöhten Flexibilität bei der Formulierung
der PPs führt.
Aus diesen Ansprüchen ist folgende Forschungsfrage abzuleiten:
Wie bietet man eine Zugriffskontrolle für Resource Description Framework
(RDF)-Stores mit Unterstützung von Fine Grained Access Control (FGAC),
Policy Based Access Control (PBAC) und Create/Read/Update/Delete (CRUD)Anfragen, basierend auf einem Linked Open Vocabulary (LOV)?
Die nachfolgende Arbeit gliedert sich in weitere fünf Kapitel. In Kapitel 2 werden die
Grundlagen zum semantischen Web, zu Linked Data und zu weiteren, für diese Arbeit
relevanten Technologien erläutert. Kapitel 3 beschäftigt sich mit ähnlichen Arbeiten
und Aufgabenstellungen und in Kapitel 4 werden die Anforderungen an diese wissenschaftliche Arbeit eingegrenzt. Wie die Anforderungen schlussendlich in S-Watchdog
umgesetzt wurden, wird in Kapitel 5 erklärt. Zusammenfassende Worte über die Arbeit
und einen dazugehörigen Ausblick finden Sie im abschließenden Kapitel 6.

2

GRUNDLAGEN

2

3

Grundlagen

Dieses Kapitel erläutert Grundlagen, welche das Verständnis für die eigentliche, Ihnen vorliegende Arbeit in den nächsten Kapiteln fördert. Dabei werden Begriffe wie
Semantic Web, Resource Description Framework und Linked Data erläutert, sowie weitere
relevante Themen für Zugriffskontrollmodelle beleuchtet.

2.1

Die Entwicklung des Webs

Seit Anbeginn des 21. Jahrhunderts ist das WWW allgegenwärtig. Die Benutzung dieses
Mediums zum Austausch von Informationen ist mittlerweile nicht mehr nur wenigen
Institutionen vorbehalten, sondern nahezu jeder Einzelperson bereits mit geringem
Aufwand möglich. Neben der Möglichkeit der ständigen Aktualität der Daten ist auch
die hohe Verfügbarkeit und Erreichbarkeit von prinzipiell jedem Ort aus Teil der Reihe
an erheblichen Vorteilen im Vergleich zu herkömmlichen Formen des Informationsaustauschs. In den letzten zwei Dekaden entwickelte sich das Web rasant weiter. Die
Entwicklungsstufen des WWW werden dabei Web 1.0 bis Web 4.0 bezeichnet und von
Aghaei, Nematbakhsh und Farsani (2012) folgendermaßen charakterisiert:
2.1.1

Web 1.0 — Read-Only-Web

Tim Berners-Lee gilt als der Pionier des Web 1.0, welches er 1989 ins Leben rief. Die erste Entwicklung des Webs hatte insbesondere den Zweck, Informationen zu jeder Zeit
und an jedem Ort zugänglich zu machen. Das Web 1.0 wird auch als Read-Only-Web
bezeichnet, da es in erster Linie dazu diente, UserInnen Lese-Zugriff auf Informationen
zu bieten. Informationen statisch zu veröffentlichen war lediglich Web-Entwicklern
vorbehalten. Die Inhalte der veröffentlichten Seiten waren mit Zeitschriften und Zeitungsinseraten vergleichbar, da keine Interaktion mit diesen möglich war (Berners-Lee
1998).
2.1.2

Web 2.0 — Read-Write-Web

2004 prägte Dale Dougherty erstmals den Begriff Web 2.0 und definierte diese Entwicklungsstufe des Webs dabei folgendermaßen:
„Web 2.0 is the business revolution in the computer industry caused by the
move to the internet as platform, and an attempt to understand the rules for
success on that new platform. Chief among those rules is this: Build applications that harness network effects to get better the more people use them.
(This is what I’ve elsewhere called “harnessing collective intelligence.”)“
(O’Reilly 2006)


Related documents


masterthesis
whitepaper cortexserver v 1 1
datenschutzerklarung
fachbereich gastronomie kasse
pr fungsthemen bsnt ws 2014
datenschutzerklarung internetseite 1

Link to this page


Permanent link

Use the permanent link to the download page to share your document on Facebook, Twitter, LinkedIn, or directly with a contact by e-Mail, Messenger, Whatsapp, Line..

Short link

Use the short link to share your document on Twitter or by text message (SMS)

HTML Code

Copy the following HTML code to share your document on a Website or Blog

QR Code

QR Code link to PDF file Masterthesis.pdf