Sicherheit von Datenbanken

Eine Datenbank ist ein spezielles Datenobjekt mit einem typischen Satz an Zugriffoperationen. Eine Datenbank hat als Datenobjekt einige besondere Merkmale:

nach obenZum Dokumentkopf


Klassischer Zugriffsschutz

Typisch für Daten, die in einer Datenbank organisiert sind, ist der "inhaltsgesteuerte Zugriff" - die physische Struktur der Daten muß dem Anwender oder Anwendungsprogramm nicht bekannt sein, sie wird vom Datenverwaltungssystem (‘Data Base Management’) geregelt.

Die Daten müssen vor physischen Zugriffen und vor Zugriffen über das Betriebssystem geschützt sein. - das Datenbanksystem kann keinen besseren Schutz gewähren als das zugrundeliegende Betriebssystem. Ein Zugriff auf die Daten sollte nur über das Verwaltungssystem möglich sein.

In die Kategorie "klassischer Zugriffsschutz" gehört auch der Vorschlag, die Datensätze oder zumindest ihren Identifikationsteil asymmetrisch zu verschlüsseln. Das erlaubt die Eingabe für einen größeren Personenkreis mit Hilfe des öffentliches Schlüssels; gegen Lesen sind die Daten - auch bei unsicheren Übertragungsweg - geschützt, außer vor autorisierten Personen, die den geheimen Schlüssel kennen.

nach obenZum Dokumentkopf


Abgleich von Daten

Datenabgleich bedeutet, Informationen aus verschiedenen Quellen zusammenzuführen. Dies ist nicht immer erwünscht. Stellt man sich zum Beispiel Patientendaten in einem Krankenhaus vor, so sind

Identifikationsmerkmale (Name usw.) vertraulich,

Die Datenschutzgesetzgebung fordert die Löschung des Personenbezugs von Datensätzen (Anonymisierung), wo immer möglich. Es muß verhindert werden, daß vertrauliche Informationen aus zulässigen Zugriffen durch Interferenz hergeleitet und die Datensätze deanonymisiert werden können.

Im allgemeinen enthält ein medizinischer Datensatz noch genügend Merkmale eines Individuums, um dieses eindeutig zu identifizieren, selbst wenn er formal anonymisiert ist, also etwa Name, Anschrift und Geburtsdatum gelöscht sind.

Anonymisierung

Für die medizinische Forschung ebenso wie für die administrative Planung bieten große Datensammlungen mit einer Vielzahl von Merkmalen zum Zwecke komplexer statischer Auswertungen erhebliche Möglichkeiten.

Der Datenschutz fordert, daß es unmöglich sein soll, die dazu benutzten Datensätze bestimmten Personen zuzuordnen. Datensätze sind um so besser geschützt, je geringer der Informationsgehalt der Überschneidungsmerkmale mit dem potentiellen Zusatzwissen eines Angreifers ("Herr Meier liegt in der Universitätsklinik und leidet an Lungenkrebs") ist.

Hier setzen die Verfahren zur Anonymisierung an - der Informationsgehalt des möglichen Überschneidungswissen wird absichtlich gemildert. Dazu sind die folgenden Maßnahmen geeignet:

nach obenZum Dokumentkopf


Die GRANT-Anweisung

Mit Hilfe der SQL-GRANT-Anweisung werden neue Benutzer in den Benutzerkatalog eingeführt und gleichzeitig Befugnisse zugeteilt.

Die Anweisung zum Einführen neuer Benutzer lautet:

GRANT CONNECT

TO [Benutzer]...

IDENTIFIED BY [Kennwort]...

Beispiel: Zwei neue Benutzer sollen eingeführt werden, Hugo mit dem Paßwort Ich_Darf und Walter mit dem Paßwort Ich_Auch:

GRANT CONNECT

TO Hugo, Walter

IDENTIFIED BY Ich_Darf, Ich_Auch

Die SQL-Synthax zur expliziten Zuweisung von Befugnissen lautet:

GRANT [ SELECT
| INSERT
| DELETE
| UPDATE {Spaltenname}
| INDEX
| ALTER
| ALL}

ON Tabellenspezifikation

TO [ [Benutzer]... | PUBLIC ]

{ WITH GRANT OPTION }

oder

GRANT [ DBA | RESOURCE ]

TO [Benutzer ] ...

Beispiel: Gib Hugo die SELECT-Berechtigung für die Tabelle "Angestellte":

GRANT SELECT

ON Angestellte

TO Hugo

nach obenZum Dokumentkopf
Naechstes KapitelNächstes Kapitel
Naechstes KapitelVoriges Kapitel