Bachelorarbeit, 2010
87 Seiten, Note: 2,0
1 Einleitung
1.1 Szenario
1.2 Zielsetzung und Anforderungen
1.3 Vorgehensweise
1.4 Gliederung der Arbeit
2 Grundlagen
2.1 Gängige Konzepte zur Umsetzung von Web-Anwendungen
2.2 Informationssicherheit im Umfeld des Internets
2.2.1 Notwendigkeit von Informationssicherheit
2.2.2 Rollenbasierte Zugriffskontrolle und das Bell-LaPadula-Modell
2.2.3 Versteckte Kanäle
2.2.4 Mehrfache Instanziierung
2.3 Kompartmentalisierung
2.3.1 Die Umsetzung der Kompartmentalisierung in der Anwendung Plusquam
2.4 Fazit
3 Kompartmentalisierung für das Bugtracking
3.1 Projektmanagement und Bugtracking
3.1.1 Benutzerverwaltung
3.1.2 Projektverwaltung
3.1.3 Tickets
3.2 yats - Yet Another Ticketing System
3.2.1 Entwurf und Abbildung der Datenbank
3.2.1.1 Klassenübergreifende Attribute
3.2.1.2 Die Klasse Project
3.2.1.3 Die Klasse Issue
3.2.1.4 Die Klasse User und ihr beigeordnete Klassen
3.2.1.5 Die Klasse Enumeration
3.2.1.6 Die Klasse Tracker
3.2.1.7 Die Klasse Role
3.2.2 Abbildung der Anwendungslogik
3.2.2.1 Allgemeines
3.2.2.2 Benutzerverwaltung
3.2.2.3 Projektverwaltung
3.2.2.4 Tickets
3.2.2.5 Umsetzung einer Suchfunktion
3.3 Integration der Kompartmentalisierung in den Bugtracker
3.3.1 Vorbereitung des yats-Entwurfes zur Integration
3.3.1.1 Bereitstellung eines Mechanismus’ zur Authentifizierung
3.3.1.2 Bereitstellung eines Modells für Benutzerrollen
3.3.1.3 Anpassung der Modelle und Controller
3.3.1.4 Das Berechtigungsmodell für yats
3.3.2 Bestimmung der Modelle zur Formung eines Kompartments
3.3.3 Umsetzung der Kompartmentalisierung in yats
3.3.4 Entwicklung einer Policy zur Synchronisierung
3.4 Fazit
4 Evaluation
4.1 Vorgehen bei den automatisierten Tests
4.2 Entwicklung der Testdaten
4.2.1 Testdaten für Benutzer
4.2.2 Testdaten für Projekte und deren Mitglieder
4.2.3 Testdaten für Tickets
4.3 Hilfsmethoden für alle Testfälle
4.4 Testfälle für die Kompartmentalisierung in den Modellen
4.5 Test der Anwendungslogik
4.6 Test des SynchronizationController
4.7 Test der Synchronisierung
4.8 Bewertung der Synchronisierungs-Funktion
4.8.1 Synchronisierung über Benutzer-Berechtigungen
4.8.2 Konfliktlösungsstrategien
4.9 Abgrenzung zu verwandten Arbeiten
4.10 Fazit
5 Ergebnis und Ausblick
A Installation von yats
A.1 Systemvoraussetzungen
A.2 Einrichten einer yats-Instanz
B Das Berechtigungsmodell für yats
Die vorliegende Arbeit untersucht die Integration von Kompartmentalisierungs-Techniken in Web-Anwendungen, um kollaboratives Arbeiten auf einem gemeinsamen Datenbestand zu ermöglichen, während gleichzeitig streng kontrollierte Zugriffsebenen gewahrt bleiben. Ziel ist es, ein bestehendes Sicherheitskonzept in ein Projektmanagement-System zu implementieren und dessen Praxistauglichkeit sowie Sicherheit zu evaluieren.
3.3.1.4 Das Berechtigungsmodell für yats
Die in Abschnitt 3.2.2 behandelten Anwendungsfälle und Anforderungen an die Controller identifizieren die folgenden Benutzergruppen bzw. -rollen:
• Administrator
• Benutzer
• Projektleiter
• Projektmitglied
• Verantwortlicher für Ticket
• nicht angemeldet / Gast
Dabei kommen der Rolle „Projektmitglied“ erst einmal keine gesonderten Berechtigungen zu. Diese ergeben sich eher indirekt aus der Tatsache, dass nur Projektmitglieder als verantwortliche Personen für ein Ticket eingetragen werden können.
Die fünf übrigen Benutzerrollen ergeben in Verbindung mit den oben behandelten Anwendungsfällen das in Tabelle 3.1 gezeigte Berechtigungsmodell. Dieses muss dann mittels der DSL für declarative_authorization formuliert und in die Anwendung eingebunden werden. Die Berechtigungen für die in der Tabelle aufgeführte Rolle des „Verantwortlichen für Ticket“ können dabei zusammen mit der Rolle des „Benutzers“ formuliert werden. Die Rolle „Projektleiter“ und ihre Berechtigungen würden dabei wie folgt übersetzt:
1 Einleitung: Diese Einleitung führt in das Szenario der Datenkompartmentalisierung für Web-Anwendungen ein, definiert die Problemstellung der Zugriffskontrolle und beschreibt die Zielsetzung der Arbeit.
2 Grundlagen: Das Kapitel erläutert Konzepte wie das MVC-Modell, Informationssicherheit im Internet und das Konzept der Kompartmentalisierung sowie die mehrfache Instanziierung von Datensätzen.
3 Kompartmentalisierung für das Bugtracking: Hier erfolgt der Entwurf und die Implementierung des beispielhaften Bugtrackers "yats" sowie die schrittweise Integration des Kompartmentalisierungs-Moduls inklusive der Definition einer Policy.
4 Evaluation: Dieser Abschnitt bewertet das entwickelte Gesamtsystem anhand automatisierter Tests, prüft die Synchronisierungs-Funktionen und grenzt die Arbeit von anderen Sicherheitsansätzen ab.
5 Ergebnis und Ausblick: Das Fazit fasst die erreichten Ergebnisse zusammen und gibt Anregungen für zukünftige Entwicklungen, insbesondere hinsichtlich erweiterter Konfliktlösungsstrategien.
Kompartmentalisierung, Web-Anwendungen, Informationssicherheit, Projektmanagement, Bugtracking, yats, Zugriffskontrolle, Synchronisierung, Datensicherheit, Polyinstanziierung, Rollenbasierte Zugriffskontrolle, Softwareentwicklung, Ruby on Rails, declarative_authorization, Konfliktlösung.
Die Arbeit behandelt die Implementierung eines Sicherheitsmodells in Web-Anwendungen, das Daten in sogenannte Kompartments trennt, um kollaboratives Arbeiten bei gleichzeitiger Zugriffsbeschränkung zu ermöglichen.
Die Schwerpunkte liegen auf der Informationssicherheit, der rollenbasierten Zugriffskontrolle, der Kompartmentalisierung von Datenbanken und der Synchronisierung von Datenreplikaten.
Das Hauptziel besteht darin aufzuzeigen, dass eine Web-Anwendung durch Kompartmentalisierungs-Techniken so erweitert werden kann, dass sie sicher in Umgebungen mit konkurrierenden Dienstleistern eingesetzt werden kann.
Es wird ein anwendungszentrierter Ansatz gewählt, bei dem zunächst ein Prototyp (yats) entwickelt, integriert und anschließend durch eine Vielzahl automatisierter Unit- und Functional-Tests evaluiert wird.
Der Hauptteil widmet sich dem Entwurf der Datenbankmodelle und der Anwendungslogik, der Einbindung von Autorisierungs-Plugins sowie der technischen Realisierung des Kompartmentalisierungs-Moduls und der dazugehörigen Synchronisierungs-Policy.
Die Arbeit ist maßgeblich durch Begriffe wie Kompartmentalisierung, Zugriffskontrolle, Synchronisierung, Datensicherheit und Software-Architektur geprägt.
Um den Anpassungsaufwand bei der Integration des Kompartmentalisierungs-Moduls gering zu halten, wurde eine schlanke Anwendung gewählt, statt ein hochkomplexes bestehendes System wie Redmine anzupassen.
Die Policy legt verbindlich fest, wie bei Konflikten während der Synchronisierung zwischen Kompartments zu verfahren ist, etwa ob lokale Daten überschrieben werden oder eine manuelle Konfliktlösung notwendig ist.
Der GRIN Verlag hat sich seit 1998 auf die Veröffentlichung akademischer eBooks und Bücher spezialisiert. Der GRIN Verlag steht damit als erstes Unternehmen für User Generated Quality Content. Die Verlagsseiten GRIN.com, Hausarbeiten.de und Diplomarbeiten24 bieten für Hochschullehrer, Absolventen und Studenten die ideale Plattform, wissenschaftliche Texte wie Hausarbeiten, Referate, Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Dissertationen und wissenschaftliche Aufsätze einem breiten Publikum zu präsentieren.
Kostenfreie Veröffentlichung: Hausarbeit, Bachelorarbeit, Diplomarbeit, Dissertation, Masterarbeit, Interpretation oder Referat jetzt veröffentlichen!

