
ScyllaDB Daten-Audit Trail

Datenüberwachung ist ein entscheidender Aspekt im Datenbankmanagement, da sie Administratoren ermöglicht, Änderungen, Abfragen und Ereignisse innerhalb ihrer Systeme zu überwachen und nachzuverfolgen. ScyllaDB bietet robuste Werkzeuge für die Datenüberwachung, die für Compliance, Sicherheit und betriebliche Effizienz sorgen. Dieser Artikel beleuchtet die nativen Funktionen des Daten-Audit Trails von ScyllaDB und die zusätzlichen Vorteile der Integration von DataSunrise für eine umfassende Datenbanküberwachung.
Verstehen von Daten-Audit Trails
Ein Daten-Audit Trail erfasst jede Operation innerhalb einer Datenbank sorgfältig und dokumentiert Aktivitäten wie Datenänderungen, ausgeführte Abfragen und administrative Aktionen. Diese umfassende Aufzeichnung ermöglicht es Organisationen, regulatorische Vorgaben einzuhalten, Sicherheitslücken schnell zu identifizieren und zu beheben sowie historische Daten auf Trends und Erkenntnisse zu analysieren, wodurch die operative Transparenz und Kontrolle gestärkt wird.
ScyllaDB erleichtert diesen Prozess sowohl durch native Funktionen als auch durch externe Werkzeuge, die ein effektives Verfolgen und Analysieren von Datenbankereignissen für unterschiedliche geschäftliche Anforderungen ermöglichen.
Native Datenüberwachungsfunktionen von ScyllaDB
ScyllaDB Enterprise unterstützt die native Datenüberwachung durch die Konfiguration der Datei scylla.yaml. Administratoren können Aktivitäten entweder in ein Syslog oder in eine ScyllaDB-Tabelle protokollieren, je nach ihren Speicher- und Überwachungspräferenzen.
Aktivierung der ScyllaDB Überwachung
Um die Überwachung zu aktivieren, setzen Sie den Parameter audit in der Datei scylla.yaml:
- none: Deaktiviert die Überwachung (Standard).
- table: Speichert Audit-Logs in einer ScyllaDB-Tabelle.
- syslog: Sendet Audit-Logs an Syslog.
Beispielkonfiguration für die Überwachung:
# Audit-Einstellungen audit: "table" # Audit-Kategorien audit_categories: "DCL,DDL,AUTH" # Spezifische Tabellen und Keyspaces, die überwacht werden sollen audit_tables: "mykeyspace.mytable" audit_keyspaces: "mykeyspace"
Starten Sie den Scylla-Knoten neu, um die Änderungen anzuwenden:
sudo systemctl restart scylla-server
Konfigurierbare Audit-Parameter
ScyllaDB ermöglicht die Feinabstimmung der Überwachungseinstellungen mithilfe der folgenden Parameter:
Parameter | Beschreibung |
---|---|
audit_categories | Kommagetrennte Liste von Ereigniskategorien. |
audit_tables | Tabellen, die im Format <keyspace>.<table> überwacht werden sollen. |
audit_keyspaces | Keyspaces, die vollständig überwacht werden sollen. |
Ereigniskategorien
- AUTH: Protokolliert Anmeldeereignisse.
- DML: Verfolgt Datenmanipulationen (INSERT, UPDATE, DELETE).
- DDL: Protokolliert Schemaänderungen (CREATE, ALTER, DROP).
- DCL: Protokolliert Berechtigungsänderungen.
- QUERY: Erfasst alle Abfragen (hoher Speicherbedarf).
- ADMIN: Protokolliert administrative Operationen.
Anzeigen von Audit-Logs
Die Logs werden je nach konfigurierter Methode gespeichert:
Beispiel Syslog
Logs erscheinen im Syslog des Systems unter dem Prozessnamen scylla-audit. Beispielausgabe:
Mar 18 09:53:52 scylla-audit[28387]: "10.143.2.108", "DDL", "ONE", "team_roster", "nba", "DROP TABLE nba.team_roster;", "127.0.0.1", "anonymous", "false"
Beispiel Tabelle
Audit-Logs in einer Tabelle können mit SQL abgefragt werden:
SELECT * FROM audit.audit_log;
Ausgabe:
date | category | keyspace_name | operation |
---|---|---|---|
2024-12-01 12:00:00 | DDL | nba | DROP TABLE nba.team_roster; |
Natives Daten-Auditing mit SQL
ScyllaDB unterstützt das Auditing durch SQL-Funktionen wie Views und gespeicherte Prozeduren. Im Folgenden werden Beispiele erläutert.
Verwendung von Views für das Auditing
Views können Änderungen überwachen, indem eine Audit-View erstellt wird, die mit einer Tabelle verknüpft ist:
CREATE MATERIALIZED VIEW audit_view AS SELECT * FROM mykeyspace.mytable WHERE timestamp > now() - interval '1 day';
Verwendung von gespeicherten Prozeduren für das Auditing
Gespeicherte Prozeduren können Ereignisse in eine benutzerdefinierte Audit-Tabelle protokollieren:
CREATE OR REPLACE FUNCTION log_audit(event TEXT, user TEXT) RETURNS VOID AS $$ BEGIN INSERT INTO mykeyspace.audit_log (event, user, event_time) VALUES (event, user, NOW()); END; $$ LANGUAGE plpgsql;
Verbindung zu ScyllaDB
Um sich zu verbinden und Audits zu konfigurieren, verwenden Sie Ihren bevorzugten Client, wie z. B. cqlsh oder eine Programmiersprache wie Python:
from cassandra.cluster import Cluster cluster = Cluster(["127.0.0.1"]) session = cluster.connect("mykeyspace") session.execute("ALTER TABLE mytable ...")
DataSunrise-Integration für ScyllaDB Auditing
DataSunrise erweitert das Auditing von ScyllaDB durch fortschrittliche Funktionen, die eine zentrale Kontrolle und detaillierte Analysen bieten.
Konfiguration von DataSunrise für ScyllaDB Auditing
- Instanz erstellen: Starten Sie eine neue DataSunrise-Instanz und verbinden Sie diese mit Ihrer ScyllaDB-Datenbank.
- Filter einrichten: Definieren Sie Filterausdrücke für das Auditing:
- Objektgruppe: Überwachen Sie spezifische Datenbankobjekte.

- Abfragegruppe: Filtern Sie Abfragen nach Typen (DML, DDL).

- Abfragetypen: Erkennen Sie SQL-Injection-Versuche.

- SQL Injection:

- Sitzungsereignisse: Erfassen Sie Aktivitäten von Benutzersitzungen.

Anzeigen der Audit-Daten in DataSunrise
Die Audit-Ergebnisse sind im Dashboard von DataSunrise verfügbar. Exportieren Sie Logs oder generieren Sie Berichte zur Analyse.

Vorteile von DataSunrise
- Zentrale Kontrolle: Einheitliche Regeln über mehrere Datenbanken hinweg.
- Compliance-Garantie: Erleichtert das Einhalten regulatorischer Anforderungen.
- Erhöhte Sicherheit: Erkennt anomales Verhalten, einschließlich SQL-Injections.
Fazit
Die Implementierung eines ScyllaDB Daten-Audit Trails ist ein wesentlicher Schritt hin zu robuster Datenbanksicherheit und betrieblicher Überwachung. Die nativen Auditing-Funktionen von ScyllaDB bieten präzise und konfigurierbare Mechanismen zur Überwachung von Benutzeraktionen und Datenbankänderungen, wodurch Compliance sichergestellt und potenzielle Schwachstellen aufgedeckt werden. Durch den Einsatz SQL-basierter Werkzeuge wie Views und gespeicherter Prozeduren können Administratoren benutzerdefinierte, anpassungsfähige Überwachungsprozesse entwickeln, die den Bedürfnissen der Organisation entsprechen.
Die Integration von DataSunrise hebt diese Fähigkeit weiter, indem sie zentrales Auditing und Sicherheit bietet. Die fortschrittlichen Filter und die Sitzungsverfolgung der Plattform gewährleisten einen einheitlichen Ansatz zur Datenverwaltung über mehrere Systeme hinweg, was Compliance und betriebliche Effizienz verbessert. Darüber hinaus vereinfachen die Analysen und detaillierten Berichte von DataSunrise die Identifikation von Anomalien und Bedrohungen.
Um herauszufinden, wie DataSunrise Ihre Strategie zur Datenbanküberwachung optimieren und verbessern kann, besuchen Sie die offizielle Website und entdecken Sie die umfassenden Funktionen anhand einer Online-Demonstration.