Datenbankaudit für ScyllaDB

Einleitung
In der heutigen datengesteuerten Welt haben Organisationen mit Petabytes an Daten zu kämpfen. Dementsprechend war der Bedarf, diese Daten effizient zu speichern und zu verwalten, noch nie so groß wie heute. Führende IT-Unternehmen konkurrieren ständig darum, die nahtlosesten und skalierbarsten Lösungen zur Verwaltung großer Mengen unstrukturierter Daten – wie Nachrichten, Protokolle oder Sensordaten – zu entwickeln. Eine der beliebtesten Optionen für verteilten Datenspeicher ist Apache Cassandra, eine NoSQL-Datenbank, die für ihre Skalierbarkeit und Fehlertoleranz bekannt ist.
Ein neuer Herausforderer ist jedoch aufgetaucht: ScyllaDB. ScyllaDB, das verspricht, Cassandra sowohl in puncto Geschwindigkeit als auch Skalierbarkeit zu übertreffen, erlangt Aufmerksamkeit dank seiner Hochleistungsfähigkeiten und Unternehmensfeatures, einschließlich nativer Datenbankauditierung. In diesem Artikel werden wir die nativen Audit-Fähigkeiten von ScyllaDB untersuchen und wie diese genutzt werden können, um Sicherheit, Compliance und betriebliche Transparenz zu erhöhen.
Was ist Datenbankaudit?
Datenbankauditierung bezieht sich auf den Prozess der Verfolgung und Aufzeichnung verschiedener Datenbankaktivitäten, wie z. B. Login-Ereignisse, ausgeführte Abfragen und Datenänderungen. Die Auditierung dient mehreren Zwecken, unter anderem:
- Regulatorische Compliance: Sicherstellung, dass die Datenbankoperationen den Industriestandards und gesetzlichen Anforderungen entsprechen.
- Sicherheitsüberwachung: Erkennung und Verhinderung unbefugter Zugriffe oder verdächtiger Aktivitäten.
- Datenintegrität: Aufrechterhaltung der Konsistenz und Genauigkeit der Daten durch umfassende Nachverfolgung.
- Schutz sensibler Daten: Maskierung oder Protokollierung des Zugriffs auf sensible Informationen, um Datenlecks zu verhindern.
Während die Datenbankauditierung in relationalen Datenbankmanagementsystemen (RDBMS) eine gängige Praxis ist, ist sie in NoSQL-Systemen wie ScyllaDB weniger verbreitet. Allerdings bietet ScyllaDB in seiner Enterprise Edition native Audit-Funktionen, die darauf ausgelegt sind, den Anforderungen sicherheitsbewusster Unternehmen gerecht zu werden.
Natives Datenbankaudit in ScyllaDB
Das native Datenbankaudit in ScyllaDB ist Teil der Enterprise Edition und bietet einen leistungsstarken Mechanismus zur Protokollierung und Überwachung von Datenbankaktivitäten. Dies hilft dabei, sicherzustellen, dass sensible Daten geschützt sind und die Compliance-Anforderungen erfüllt werden.
Standardmäßig ist die Auditierung in ScyllaDB deaktiviert. Um das Audit zu aktivieren, müssen Administratoren die ScyllaDB-Konfigurationsdatei (scylla.yaml) anpassen und angeben, welche Ereignisse protokolliert werden sollen und wo die Audit-Logs gespeichert werden sollen.
Konfiguration des Datenbankaudits in ScyllaDB
Hier sind die Schritte, um die Auditierung in ScyllaDB zu aktivieren und zu konfigurieren:
- Zugriff auf die ScyllaDB-Instanz: Verbinden Sie sich zunächst mit dem ScyllaDB-Container oder der Instanz, in der Ihre ScyllaDB-Instanz läuft. Dies kann typischerweise über Docker oder direkt auf einem Server, der ScyllaDB hostet, erfolgen.

- Bearbeiten der Konfigurationsdatei: Öffnen Sie die
scylla.yaml-Konfigurationsdatei, in der Sie die Audit-Einstellungen aktivieren und anpassen können.
docker exec -it <container_id> /bin/bash
nano /etc/scylla/scylla.yamlSuchen Sie in der Konfigurationsdatei nach den folgenden Parametern und passen Sie diese entsprechend Ihren Anforderungen an:
audit: Setzen Sie diesen Parameter auftable, um die Protokollierung in einer spezifischen Tabelle zu aktivieren.audit_categories: Geben Sie die Arten von Datenbankoperationen an, die auditiert werden sollen. Sie können Kategorien wieDCL(Data Control Language),DDL(Data Definition Language) undAUTH(Ereignisse im Zusammenhang mit Authentifizierung) einbeziehen.audit_keyspaces: Definieren Sie die Keyspaces, für die Sie Audit-Logs sammeln möchten. Wenn Sie beispielsweise einen Keyspace namensmy_keyspaceerstellt haben, geben Sie diesen hier an.
Beispielkonfiguration:
audit: "table"
audit_categories: "DCL, DDL, AUTH"
audit_keyspaces: "my_keyspace"- Speichern und Neustarten von ScyllaDB: Nachdem Sie die Änderungen an der Konfiguration vorgenommen haben, speichern Sie die Datei und starten Sie ScyllaDB neu, um die neuen Einstellungen zu übernehmen.
docker exec -it <container_id> supervisorctl restart scylla- Überprüfen der Konfiguration: Sobald die Änderungen übernommen wurden, können Sie überprüfen, ob das Audit funktioniert, indem Sie sich mit cqlsh mit ScyllaDB verbinden und einige Datenbankoperationen durchführen, beispielsweise das Erstellen oder Löschen von Tabellen.

Beispiel zum Erstellen einer Testtabelle:
CREATE TABLE my_keyspace.users (
user_id UUID PRIMARY KEY,
first_name TEXT,
last_name TEXT,
email TEXT,
date_of_birth DATE
);Nachdem einige Abfragen ausgeführt wurden, können Sie die Audit-Logs abfragen, um zu überprüfen, ob die Operationen protokolliert werden.

Audit-Kategorien und Anpassungen
Die Audit-Funktion von ScyllaDB bietet Flexibilität bei der Auswahl der Datenbankoperationen, die protokolliert werden sollen. Zu den verfügbaren Audit-Kategorien gehören:
- DCL (Data Control Language): Umfasst Befehle im Zusammenhang mit Datenbankberechtigungen und Zugriffskontrolle, wie
GRANTundREVOKE. - DDL (Data Definition Language): Verfolgt Schemaänderungen wie Befehle
CREATE,ALTERundDROP. - AUTH (Authentifizierung und Autorisierung): Protokolliert Ereignisse im Zusammenhang mit der Benutzerauthentifizierung und -autorisierung, wie Anmeldeversuche und Berechtigungsänderungen.
Diese Kategorien können basierend auf den Anforderungen der Organisation angepasst werden. Wenn beispielsweise nur Änderungen an Datenschemas überwacht werden sollen, können Sie audit_categories ausschließlich auf DDL setzen.
Struktur der Audit-Tabelle
Audit-Logs in ScyllaDB werden in einer dedizierten Tabelle gespeichert, die in der Konfigurationsdatei angegeben wird. Das Standardschema für die Audit-Tabelle umfasst typischerweise Spalten für den Ereignistyp, Zeitstempel, Benutzerdetails, die betroffene Ressource und die durchgeführte Operation. Diese strukturierte Protokollierung erleichtert das Abfragen und Analysieren von Audit-Logs, um verdächtige Aktivitäten oder Compliance-Verstöße zu erkennen.
Integration mit DataSunrise
Für Unternehmen, die fortschrittliche Funktionen zur Datenbanksicherheit benötigen, bietet die Integration von ScyllaDB mit DataSunrise Database Security einen erweiterten Schutz. DataSunrise bietet umfassende Überwachungs-, Audit- und Echtzeit-Bedrohungserkennungsfunktionen, um sicherzustellen, dass kritische Daten geschützt werden.
Hinzufügen der ScyllaDB-Datenbank in DataSunrise
Um ScyllaDB in DataSunrise zu integrieren, befolgen Sie diese Schritte:
- ScyllaDB-Instanz hinzufügen: Öffnen Sie die DataSunrise-Verwaltungskonsole und fügen Sie Ihre ScyllaDB-Instanz hinzu, indem Sie die erforderlichen Verbindungsdetails (z. B. IP-Adresse, Port, Zugangsdaten) angeben.

- Sicherheitsregeln für ScyllaDB erstellen: DataSunrise ermöglicht es Ihnen, speziell auf ScyllaDB zugeschnittene Sicherheitsregeln zu erstellen. Diese Regeln können dazu verwendet werden, Zugriffsverhalten zu überwachen, Warnungen bei verdächtigen Aktivitäten zu setzen und die Einhaltung von Datenschutzbestimmungen sicherzustellen.

Diese kurze Übersicht hebt nur einige der Möglichkeiten der DataSunrise Database Security Toolchain hervor. Wenn Sie eine ausführlichere Darstellung der Funktionen wünschen, die für Ihre Bedürfnisse am relevantesten sind, können Sie eine persönliche Online-Demo vereinbaren. Alternativ können Sie das Tool auch direkt testen, indem Sie die Testversion herunterladen.
Fazit
Die nativen Datenbankaudit-Funktionen von ScyllaDB in der Enterprise Edition bieten ein unverzichtbares Werkzeug für Organisationen, die sichere, regelkonforme und transparente Datenbankoperationen aufrechterhalten müssen. Durch das Aktivieren und Anpassen der Auditierung können Administratoren sicherstellen, dass kritische Datenbankaktivitäten so erfasst und protokolliert werden, dass sie Sicherheits- und Regulierungsanforderungen unterstützen.
Da sich ScyllaDB kontinuierlich weiterentwickelt, werden seine Audit-Funktionen voraussichtlich noch robuster, sodass Organisationen ihre Daten besser schützen und den Anforderungen moderner Compliance- und Sicherheitsstandards gerecht werden können.
