SQL braucht Überwachung? SQL Auditing konfigurieren

Veröffentlicht am:

Eine unerwartete Datenbankänderung fällt auf. Dein Team muss herausfinden, wer sich wann verbunden und was ausgeführt hat. Der aktuelle Tabelleninhalt zeigt das Ergebnis; für die Untersuchung brauchst du zusätzlich eine Aufzeichnung der Aktivitäten davor. SQL Auditing erfasst ausgewählte Datenbankereignisse mit Angaben wie Zeitpunkt, Identität und SQL-Anweisung in einem separaten Protokollziel.

Datenbank und Speicher vorbereiten

Verwende sqldb-cloudtrips auf sql-ctappweu aus Azure SQL Database erstellen. Dieser Trip verwendet Azure SQL Database; Managed Instance hat eine eigene Auditing-Einrichtung. Ist deine Datenbank aktuell in France Central primär, verwende diesen Server.

Erstelle ein Speicherkonto:

Resource group: rg-cloudtrips-audit-test-weu
Storage account: stctauditweu (weltweit eindeutig)
Region: West Europe
Performance: Standard
Redundancy: LRS

Erlaube für dieses Lab öffentlichen Netzwerkzugriff aus allen Netzwerken und lasse Allow Blob anonymous access deaktiviert. Zugriffe benötigen weiterhin Authentifizierung. Verwende bei Bedarf einen eigenen Kontonamen.

Server-Auditing aktivieren

Server-Auditing erfasst alle Datenbanken des logischen Servers. Datenbank-Auditing erfasst nur die ausgewählte Datenbank. Beide haben einen eigenen Aktivierungsschalter; das Aktivieren von Datenbank-Auditing verändert die Serverrichtlinie nicht. Dieses Lab konfiguriert und testet Server-Auditing.

Öffne SQL servers → sql-ctappweu → Security → Auditing und aktiviere Auditing auf Serverebene. Wähle ein Speicherkonto vom Typ StorageV2 (general-purpose v2) als Auditziel. Konfiguriere:

Destination: Storage
Storage account: stctauditweu
Storage authentication: Managed Identity
Advanced properties → Retention: 7 days

Wähle Save. Server-Auditing erfasst vorhandene und zukünftige Datenbanken dieses Servers. Verwende für das Lab eine einzelne Serverrichtlinie; eine zusätzliche Datenbankrichtlinie erzeugt eigene Datensätze.

Aktiviertes Server-Auditing mit Speicherkonto stctauditweu, Managed-Identity-Authentifizierung und sieben Tagen Aufbewahrung

Prüfe aktiviertes Auditing und das richtige Ziel. Die Standardrichtlinie erfasst abgeschlossene SQL-Batches sowie erfolgreiche und fehlgeschlagene SQL-Datenbankanmeldungen. Die Serveridentität benötigt Storage Blob Data Contributor am Speicherkonto; das Portal übernimmt die Rollenzuweisung, wenn deine Berechtigungen dies erlauben. Scheitert das Speichern an Berechtigungen, prüfe diese Zuweisung unter Access control (IAM) des Speicherkontos.

Für Auditing über ein Failoverpaar hinweg konfiguriere Auditing und Speicherberechtigungen auf beiden logischen Servern.

Ereignis erzeugen und finden

Verbinde dich nach dem Aktivieren und Speichern der Serverrichtlinie über VS Code oder Query editor (preview) mit sqldb-cloudtrips (oder deiner tatsächlichen Datenbank, etwa stctauditweu) und führe die folgende Abfrage aus. Frühere Aktivitäten werden nicht rückwirkend protokolliert.

SELECT N'CloudTrips audit test' AS AuditMarker,
       DB_NAME() AS DatabaseName,
       SYSUTCDATETIME() AS TestTimeUtc;

Notiere die zurückgegebene UTC-Zeit. Diese harmlose Abfrage liefert eine eindeutig erkennbare Anweisung für die Suche im Protokoll.

Öffne sqldb-cloudtrips → Security → Auditing → View audit logs. Wähle bei Nachfrage das Speicherziel, Server audit als Auditquelle und eine Endzeit nach deinem Test. Die Ansicht zeigt eine Auswahl von Datensätzen aus der davorliegenden Stunde. Warte einige Minuten auf die Übertragung, aktualisiere die Ansicht und öffne den Datensatz mit CloudTrips audit test.

Auditdatensatz mit der Anweisung CloudTrips audit test, Ereigniszeit, Datenbank und ausführender Identität

Vergleiche Anweisung, Datenbank, Identität und Zeitpunkt mit deinem Test. Die Identität entspricht der verwendeten Anmeldung, etwa ctadmin; Zeitstempel variieren. Wird der Speicherzugriff verweigert, erteile deiner betrachtenden Identität Storage Blob Data Reader am Konto. Diese Berechtigung ist unabhängig von der Schreibberechtigung der Serveridentität.

Auditing zeichnet Aktivitäten ab seiner Aktivierung auf. Diese Datensätze unterstützen Untersuchungen; automatische Warnungen benötigen zusätzliche Überwachungskonfiguration.

Bereinigen

Deaktiviere und speichere die für das Lab erstellte Auditing-Richtlinie, bevor du rg-cloudtrips-audit-test-weu löschst. Bei weiter aktivem Auditing fallen Speicher- und Transaktionskosten an; die siebentägige Aufbewahrung entfernt ältere Auditdatensätze.