Oracle Database Vault

vault-title

Rund um das Thema Datenbanksicherheit stellen sich Unternehmen oft die Frage „Wie schütze ich meine Datenbank vor dem DBA und anderen privilegierten Benutzern?". Es gibt zudem viele interne Angriffe auf Datenbanken, die eine schlechte Rechtevergabe ausnutzen.
Oracle bietet zur Absicherung dieser Schwachstellen die Option „Database Vault". Sie setzt die Enterprise-Version voraus.

Realms – mein Bereich, dein Bereich

Oracle Database Vault stellt Komponenten zur Verfügung, mit denen die Datenbank abgesichert werden kann. Die wichtigste Absicherungsmöglichkeit sind die sogenannten Realms, in die eine Datenbank unterteilt werden kann. Unter einem Realm versteht man einen Bereich der Datenbank, für den Rechte isoliert vergeben werden können.
Ein Realm kann ausgewählte Tabellen oder Schemata umfassen und diese vor unautorisierten Zugriffen schützen. Wer auf ein Realm zugreifen darf, wird von einem separaten Database-Vault-Administrator verwaltet. Dieser kann seinerseits hingegen nur Database Vault Strukturen verwalten und besitzt keinen Zugriff auf Tabellendaten.

Abbildung: Regulierter Zugriff auf die Tabelle Gehälter durch einen Realm
Datenbankadministratoren und Benutzer mit ANY-Privilegien können nicht mehr auf die geschützten Daten zugreifen. Die Berechtigungen eines Benutzers oder einer Rolle können sich von Realm zu Realm unterscheiden.

Realms lassen sich ebenfalls nachträglich auf bestehende Datenbankstrukturen anwenden und verwalten. 

Regeln, Faktoren und Rule Sets

Neben den Realms gibt es in Database Vault weitere Komponenten, mit denen der Zugriff limitiert werden kann. So lassen sich Zugriffe beispielsweise örtlich oder zeitlich begrenzen.
Es gibt sogenannte Faktoren, die einzelne Systemattribute darstellen, zum Beispiel die IP-Adresse eines Benutzers. Mit Hilfe dieser Attribute lassen sich Zugriffe begrenzen, wenn Mitarbeiter beispielsweise nur von ihren Arbeitsplatzrechnern auf die Datenbank zugreifen dürfen.
Solche standardmäßigen Faktoren (Client-IP, Aufenthaltsort, Authentifizierungsmethode, etc.) können mit der prozeduralen Programmiersprache (PL/SQL), um eigene Faktoren erweitert werden. Eine Gewichtung dieser Faktoren ist möglich.

Ein Beispiel:
Datenbankadministratoren können sich nur mit einer festen IP aus dem Firmennetzwerk anmelden.
Dritte werden daran gehindert, sich mit einem Administratoraccount auf dem eigenen Rechner anzumelden. Der Verlust oder Diebstahl eines Laptops reicht auch nicht aus, um Datenzugriff zu erlangen.
Diese Faktoren können jeweils in einer Regel beschrieben werden. Um mehrere Regeln miteinander zu kombinieren, gibt es in Database Vault sogenannte Rule Sets, die eine Sammlung verschiedener Regeln darstellen. So kann unterschieden werden, ob entweder alle oder mindestens eine Regel, erfüllt sein müssen.

Als spezielle Form solcher Regeln limitieren Command Rules einzelne SQL-Befehle. So kann beispielsweise festgelegt werden, dass bestimmte Befehle nur außerhalb der Geschäftszeiten ausgeführt werden dürfen.

Sonstiger Funktionsumfang

Database Vault wartet mit einer grafischen Weboberfläche auf, den Database Vault Administrator (DVA). Mit dem DVA lassen sich einzelne Komponenten wie Realms oder Regeln konfigurieren. Diese können alternativ auch mit PL/SQL auf der Kommandozeile administriert werden. Der DVA erleichtert Einstellungen für Benutzer, die nicht mit PL/SQL vertraut sind und bietet eine benutzerfreundliche Übersicht über Konfigurationen, Monitoring und Reports rund um die Option.
Des Weiteren lässt sich das Auditing auf Database-Vault-Operationen erweitern. So können Realms, Faktoren und Rule Sets auditiert werden. Bei der Konfiguration lässt sich auswählen, ob alle oder nur fehlgeschlagene Aktionen erfasst werden sollen.

Um zusätzlich die Benutzerverwaltung zu regulieren, kommt mit Database Vault eine neue Rolle DV_ACCTMGR, welche nach der Aktivierung die einzige Rolle ist, die Benutzer anlegen, löschen und bearbeiten darf.

Fazit

Um sich vor ungewollten Zugriffen durch den eigenen DBA oder von Innen zu schützen, bietet Oracle mit Database Vault eine gute Möglichkeit, um diese Probleme recht simpel zu lösen. Dieser Schutz ist jedoch kostspielig, denn Database Vault ist eine kostenpflichtige Option.
Allerdings kann Database Vault auch keinen hundertprozentigen Schutz garantieren. Es ist nur eine weitere Sicherheitsmaßnahme, die besonders vor Gefahren von innerhalb des Unternehmens schützen kann. Werden jedoch Administrationsrechte für das Vault an den DBA vergeben, bringt die Option keinen großen Mehrwert. Daher muss gut überlegt werden, wer die Database Vault Administration übernimmt.

By accepting you will be accessing a service provided by a third-party external to https://blog.ordix.de/