ScyllaDB Revisionsprotokoll: Implementierung einer sicheren und regelkonformen Datenbankprüfung

Im digitalen Zeitalter von heute ist es wichtiger denn je, Datenintegrität, Sicherheit und Compliance zu gewährleisten. Für Datenbanken ist die Implementierung eines Prüfpfads ein zentrales Mittel zur Überwachung und zum Schutz sensibler Daten. ScyllaDB, eine leistungsstarke NoSQL-Datenbank, bietet integrierte Funktionen zur Datenprüfung, die Administratoren eine wichtige Überwachungsebene bereitstellen.
In diesem Artikel werden wir eingehend die nativen Datenprüffunktionen von ScyllaDB mithilfe von SQL-Sprachmitteln wie Views und Stored Procedures beleuchten. Wir gehen außerdem darauf ein, wie Sie das ScyllaDB-Revisionsprotokoll konfigurieren, die Prüfergebnisse einsehen und kurz die Rolle von DataSunrise für die erweiterte Datenprüfung in ScyllaDB erläutern.
Was ist ScyllaDBs Prüfprotokoll?
Ein Prüfprotokoll bezieht sich auf die detaillierten Aufzeichnungen aller Datenbankoperationen, wie beispielsweise Datenmanipulation und Zugriff. Die native Prüfprotokollfunktion von ScyllaDB ermöglicht es Administratoren, Benutzerinteraktionen mit der Datenbank zu überwachen und aufzuzeichnen, sodass Änderungen, Abfragen und andere kritische Aktivitäten nachvollzogen werden können. Diese Protokolle können entscheidend sein, um Verantwortlichkeit zu gewährleisten und regulatorische Anforderungen zu erfüllen.
Hauptfunktionen der nativen Datenprüfung von ScyllaDB
- Granulare Prüfung: Ermöglicht es Administratoren, genau festzulegen, welche Ereignisse protokolliert werden sollen – von Datenmanipulationen (INSERT, UPDATE, DELETE) bis hin zu Login-Ereignissen.
- Anpassbare Speicherung: Die Prüfprotokolldaten können je nach Konfiguration entweder in einem Systemprotokoll (Syslog) oder direkt in einer Scylla-Tabelle gespeichert werden.
- Umfassende Abdeckung: ScyllaDB kann mehrere Ereignistypen prüfen, wie DML (Data Manipulation Language), DDL (Data Definition Language) und DCL (Data Control Language).
Erweiterte Prüfungen mit ScyllaDB
ScyllaDB bietet Prüffunktionen zur Überwachung von Datenbankaktivitäten, zum Protokollieren von Abfragen und zur Sicherstellung der Datensicherheit. Diese Funktion ist ausschließlich in Scylla Enterprise verfügbar und ermöglicht es Administratoren, Audit-Logs in Syslog oder in Scylla-Tabellen zu speichern.
Aktivierung der Prüfungen
Die Prüfung wird in der scylla.yaml-Datei mittels des audit-Parameters konfiguriert. Folgende Optionen stehen zur Verfügung:
- none – Prüfung ist deaktiviert (Standard).
- table – Protokolle werden in einer Scylla-Tabelle gespeichert.
- syslog – Protokolle werden an Syslog gesendet.
Beispiel:
# Audit-Logs an Syslog aktivieren audit: "syslog" # Prüfkategorien: AUTH, DML, DDL, DCL, QUERY, ADMIN audit_categories: "DCL,DDL,AUTH" # Keyspaces und Tabellen zur Prüfung audit_keyspaces: "mykeyspace" audit_tables: "mykeyspace.mytable"
Starten Sie Scylla neu, um die Änderungen anzuwenden:
sudo systemctl restart scylla-server
Prüfkategorien
- AUTH: Erfasst Login-Ereignisse.
- DML: Verfolgt INSERT-, UPDATE- und DELETE-Operationen.
- DDL: Erfasst Schemaänderungen wie CREATE, ALTER und DROP.
- DCL: Protokolliert Berechtigungs- und Rollenzuweisungsaktivitäten.
- QUERY: Zeichnet alle ausgeführten Abfragen auf.
- ADMIN: Überwacht administrative Operationen.
Speichern von Prüf-Logs in Syslog
Die Audit-Logs werden standardmäßig an Syslog weitergeleitet: Beispiel für eine Syslog-Ausgabe bei einer DROP TABLE-Operation:
Mar 18 09:53:52 ip-10-143-2-108 scylla-audit[28387]: "10.143.2.108", "DDL", "ONE", "team_roster", "nba", "DROP TABLE nba.team_roster ;", "127.0.0.1", "anonymous", "false"
Um Syslog-Audit-Logs in einer Datei zu speichern (CentOS-Beispiel):
- Installieren Sie rsyslog:
- Aktualisieren Sie /etc/rsyslog.conf:
- Starten Sie rsyslog neu:
sudo dnf install rsyslog
if $programname contains 'scylla-audit' then /var/log/scylla-audit.log
systemctl start rsyslog systemctl enable rsyslog
Speichern von Audit-Logs in einer Tabelle
Audit-Nachrichten können auch in einer Scylla-Tabelle namens audit.audit_log gespeichert werden:
CREATE TABLE IF NOT EXISTS audit.audit_log ( date timestamp, node inet, event_time timeuuid, category text, consistency text, table_name text, keyspace_name text, operation text, source inet, username text, error boolean, PRIMARY KEY ((date, node), event_time));
Aktivieren Sie die tabellenbasierte Prüfung in der scylla.yaml:
audit: "table" audit_categories: "DCL,DDL,AUTH" audit_keyspaces: "mykeyspace"
Starten Sie Scylla neu:
sudo systemctl restart scylla-server
Beispielabfrage zum Abrufen der Audit-Logs:
SELECT * FROM audit.audit_log;
Ergebnis:
| Datum | Node | Ereigniszeit | Kategorie | Konsistenz | Fehler | Keyspace-Name | Operation | Quelle | Tabellenname | Benutzername |
|---|---|---|---|---|---|---|---|---|---|---|
| 2018-03-18 00:00:00+00 | 10.143.2.108 | 3429b1a5-2a94-11e8-8f4e-000000000001 | DDL | ONE | False | nba | DROP TABLE nba.team_roster | 127.0.0.1 | team_roster | Scylla |
DataSunrise: Eine flexible Sicherheitslösung für ScyllaDB
Während die nativen Prüfungsfunktionen von ScyllaDB grundlegende Möglichkeiten zur Prüfung bieten, offeriert DataSunrise eine umfassendere, zentralisierte Lösung zur Überwachung und Prüfung von Datenbankaktivitäten.
Einrichtung von DataSunrise für die ScyllaDB-Prüfung
- Erstellen einer DataSunrise-Instanz: Starten Sie eine neue Instanz für die ScyllaDB-Prüfung über die DataSunrise-Verwaltungsoberfläche.

- Konfigurieren Sie Prüfregeln: Definieren Sie die Prüfregeln, einschließlich der Tabellen, Keyspaces und Ereignisse, die überwacht werden sollen

- Anzeige der Prüfergebnisse: Greifen Sie über die DataSunrise-Seite auf die detaillierten Audit-Logs zu.

Vorteile der Verwendung von DataSunrise für ScyllaDB-Prüfungen
- Zentralisierte Steuerung: DataSunrise ermöglicht die zentrale Verwaltung von Prüfregeln über mehrere ScyllaDB-Instanzen hinweg.
- Erweiterte Funktionen: Beinhaltet Echtzeitwarnungen, Compliance-Berichte und Datenmaskierung.
- Benutzerfreundlichkeit: Die intuitive Oberfläche und detaillierte Berichte ermöglichen es Administratoren, verdächtige Aktivitäten schnell zu erkennen und darauf zu reagieren.
Durch die Integration von DataSunrise mit ScyllaDB erhalten Sie ein erweitertes Auditsystem, das die Einhaltung von Vorschriften vereinfacht und eine bessere Kontrolle über Ihre Datensicherheit bietet.
Fazit
Die nativen Datenprüffunktionen von ScyllaDB bieten einen zuverlässigen Weg, um Datenbankaktivitäten nachzuverfolgen und die Sicherheit zu gewährleisten. Durch das Konfigurieren spezifischer Einstellungen für Tabellen, Keyspaces und Ereignisse können Sie wichtige Operationen überwachen und protokollieren. Zusätzlich erweitert DataSunrise diese Fähigkeiten, indem es eine zentrale Plattform für die Verwaltung von Prüfregeln und die Einhaltung von Vorschriften bereitstellt.
Für Organisationen, die umfassende Datensicherheitsstrategien implementieren möchten, bietet die Integration der Audit-Funktionen von ScyllaDB mit DataSunrise eine leistungsstarke Lösung zur Überwachung und zum Schutz sensibler Daten.
Für weitere Informationen zur ScyllaDB-Prüfung oder um die fortschrittlichen Datenbanksicherheits-Tools von DataSunrise zu erkunden, besuchen Sie die offizielle DataSunrise-Website für eine Online-Demonstration.
