M 2.126 Erstellung eines Datenbanksicherheitskonzeptes
Verantwortlich für Initiierung: Leiter IT, IT-Sicherheitsmanagement
Verantwortlich für Umsetzung: IT-Sicherheitsmanagement
Die Datenhaltung in Datenbanken über einen längeren Zeitraum hinweg ist meist ein zentraler und kritischer Aspekt des Informationsmanagements einer Behörde bzw. eines Unternehmens. Zur Organisation eines reibungslosen Datenbankbetriebs muss deshalb frühzeitig ein Datenbanksicherheitskonzept erstellt werden, in dem Sicherheitsaspekte bei der Planung, Installation, Konfiguration, Betrieb, Migration und Deinstallation beschrieben sind.
Werden Datenbanken nicht ausreichend geschützt, kann es zu einem Verlust der Vertraulichkeit, Verfügbarkeit oder Integrität der gespeicherten Daten kommen. Um diesem vorzubeugen, ist es unumgänglich, ein schlüssiges Datenbanksicherheitskonzept zu erstellen.
Im Konzept müssen insbesondere Aussagen darüber gemacht werden,
- wie die Abgrenzung der Zugriffsrechte zwischen Datenbankadministration und Anwendungsadminstration erfolgt,
- wie die Speicherung der Daten und gegebenenfalls Spiegelung der Datenbank erfolgt,
- wie die Datensicherung erfolgt,
- welche Mechanismen zur Überwachung und Kontrolle der Datenbankaktivitäten eingesetzt werden und
- wie die Datenbankkapazität überwacht werden soll.
Die Sicherheit einer Datenbank wird auf Software-Ebene durch das zugehörige Datenbankmanagementsystem (DBMS) gewährleistet. Damit ein DBMS effektiven Schutz bieten kann, müssen folgende grundlegende Bedingungen erfüllt sein.
Das DBMS muss,
- auf einer umfassenden Sicherheitspolitik aufsetzen,
- im IT-Sicherheitskonzept der Organisation eingebettet sein,
- korrekt installiert und
- korrekt administriert werden.
Direkte Zugriffe auf die Datenbank (z. B. über SQL-Interpreter wie SQL*Plus) dürfen nur für administrative Benutzer zugelassen werden, um Manipulationen an den Daten bzw. Datenbankobjekten (z. B. Tabellen und Indizes) zu verhindern (siehe M 2.134 Richtlinien für Datenbank-Anfragen). Datenbankobjekte dürfen ausschließlich über spezielle Benutzerkennungen kontrolliert modifiziert werden. Dementsprechend muss das DBMS über ein geeignetes Zugriffs- und Zugangskonzept verfügen (siehe M 2.129 Zugriffskontrolle einer Datenbank und M 2.128 Zugangskontrolle einer Datenbank). Benutzer-Kennungen, die nur über eine Anwendung Datenmodifikationen durchführen können, dürfen keinen direkten Zugang zur Datenbank
erhalten, während Kennungen zur Verwaltung der Datenbankobjekte der kontrollierte direkte Zugriff erlaubt sein muss.
Weiterhin müssen folgende wichtige Aspekte in einem Datenbanksicherheitskonzept geregelt werden:
-
Die physische Speicherung bzw. Spiegelung der Datenbankdateien (z. B. der DBMS-Software, der Datenbank an sich oder der Protokolldateien) sowie deren Verteilung ist festzulegen, um z. B. die Verfügbarkeit und Ausfallsicherheit zu erhöhen. Aus Verfügbarkeitsgründen sollten gespiegelte Kontrolldateien auf verschiedenen Festplatten abgelegt sein. Der Ausfall einer Platte bedeutet dann nicht gleichzeitig den Verlust aller Kontrolldateien. Falls die Datenbankobjekte einer Anwendung in eigenen Datendateien abgelegt werden, so sollte man bei der Verteilung der Datendateien darauf achten, dass bei einem Ausfall einer Festplatte nicht alle Anwendungen betroffen sind.
- Beispiel:
Eine Datenbank verwaltet die Daten zweier Anwendungen, mit jeweils einer Datendatei für die Tabellen und Indizes. Die Datendateien können beliebig auf vier Festplatten verteilt werden.
Eine ungünstige Verteilung der Datendateien sieht folgendermaßen aus:- Festplatte 1: Ablage der Datendateien für die Indizes beider Anwendungen
- Festplatte 2: Ablage der Datendateien für die Tabellen der ersten Anwendung
- Festplatte 3: Ablage der Datendateien für die Tabellen der zweiten Anwendung
- Festplatte 4: -
Eine günstigere Verteilung der Datendateien erhält man dagegen so:- Festplatte 1: Ablage der Datendateien für die Indizes der ersten Anwendung
- Festplatte 2: Ablage der Datendateien für die Tabellen der ersten Anwendung
- Festplatte 3: Ablage der Datendateien für die Indizes der zweiten Anwendung
- Festplatte 4: Ablage der Datendateien für die Tabellen der zweiten Anwendung
Sind Festplatte 1 und 2 auf Festplatte 3 und 4 zusätzlich gespiegelt und umgekehrt Festplatte 3 und 4 auf Festplatte 1 und 2, könnten bis zu zwei beliebige Platten ausfallen, ohne dass die Datenbank für eine der beiden Anwendungen vollständig ausfiele.
Eine Datenbank verwaltet die Daten zweier Anwendungen, mit jeweils einer Datendatei für die Tabellen und Indizes. Die Datendateien können beliebig auf vier Festplatten verteilt werden.
Eine ungünstige Verteilung der Datendateien sieht folgendermaßen aus:- Festplatte 1: Ablage der Datendateien für die Indizes beider Anwendungen
- Festplatte 2: Ablage der Datendateien für die Tabellen der ersten Anwendung
- Festplatte 3: Ablage der Datendateien für die Tabellen der zweiten Anwendung
- Festplatte 4: -
Eine günstigere Verteilung der Datendateien erhält man dagegen so:- Festplatte 1: Ablage der Datendateien für die Indizes der ersten Anwendung
- Festplatte 2: Ablage der Datendateien für die Tabellen der ersten Anwendung
- Festplatte 3: Ablage der Datendateien für die Indizes der zweiten Anwendung
- Festplatte 4: Ablage der Datendateien für die Tabellen der zweiten Anwendung
Sind Festplatte 1 und 2 auf Festplatte 3 und 4 zusätzlich gespiegelt und umgekehrt Festplatte 3 und 4 auf Festplatte 1 und 2, könnten bis zu zwei beliebige Platten ausfallen, ohne dass die Datenbank für eine der beiden Anwendungen vollständig ausfiele.
- Es muss eine regelmäßige Prüfung des tatsächlich anfallenden Datenvolumens bzw. des Zuwachses des Datenvolumens im späteren laufenden Betrieb durchgeführt werden, um den benötigten Speicherplatz auch für zukünftige Bedürfnisse geeignet dimensionieren zu können.
- Geeignete Mechanismen zur Datensicherung müssen angewendet werden (siehe M 6.49 Datensicherung einer Datenbank).
- Der Einsatz von Überwachungs- und Kontrollmechanismen ist festzulegen, d. h. ob und in welchem Umfang Datenbankaktivitäten protokolliert werden sollen. Hier stellt sich unter anderem die Frage, ob beispielsweise nur der Zeitpunkt einer Datenmodifikation festgehalten wird, oder ob auch die Modifikation selbst protokolliert werden soll (siehe M 2.133 Kontrolle der Protokolldateien eines Datenbanksystems).
Für die Konzeption und den Betrieb eines Datenbanksystems muss geeignetes Personal zur Verfügung stehen. Der zeitliche Aufwand für den Betrieb eines Datenbanksystems darf nicht unterschätzt werden. Alleine die Auswertung der angefallenen Protokolldaten nimmt erfahrungsgemäß viel Zeit in Anspruch. Ein Datenbank-Administrator muss fundierte Kenntnisse über die eingesetzte DBMS-Software besitzen und auch entsprechend geschult werden.
Ergänzende Kontrollfragen:
- Wurden die Sicherheitsziele für den Einsatz eines Datenbanksystems formuliert und dokumentiert?
- Sind die Zugriffsmöglichkeiten so eingeschränkt, dass nur Administratoren über eine interaktive Abfragesprache direkt auf die Datenbanken zugreifen können?