Schreiben von SQL Server-Überwachungsereignissen in das Sicherheitsprotokoll

Gilt für:SQL Server – nur Windows

In einer Umgebung mit hoher Sicherheit ist das Windows-Sicherheitsprotokoll der geeignete Speicherort für Ereignisse, die Objektzugriffe aufzeichnen. Andere Überwachungsspeicherorte werden unterstützt, können aber leichter manipuliert werden.

Es gibt drei wichtige Anforderungen zum Schreiben von SQL Server-Serverüberwachungen in das Windows-Sicherheitsprotokoll:

  • Die Einstellungen für die Überwachung von Objektzugriffsversuchen müssen so konfiguriert sein, dass die Ereignisse aufgezeichnet werden. Das Überwachungsrichtlinientool (auditpol.exe) macht verschiedene Unterrichtlinieneinstellungen in der Überwachungsobjektzugriffskategorie verfügbar. Damit SQL Server den Objektzugriff überwachen kann, konfigurieren Sie die von der Anwendung generierte Einstellung.

  • Das Konto, unter dem der SQL Server-Dienst ausgeführt wird, muss über die Berechtigung zum Generieren von Sicherheitsüberwachungen verfügen, um in das Windows-Sicherheitsprotokoll zu schreiben. Standardmäßig verfügen die Konten LOCAL SERVICE und NETWORK SERVICE über diese Berechtigung. Dieser Schritt ist nicht erforderlich, wenn SQL Server unter einem dieser Konten ausgeführt wird.

  • Geben Sie die vollständige Berechtigung für das SQL Server-Dienstkonto für die Registrierungsstruktur HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Securityan.

    Wichtig

    Ein fehlerhaftes Bearbeiten der Registrierung kann eine schwerwiegende Beschädigung des Systems zur Folge haben. Bevor Sie Änderungen an der Registrierung vornehmen, sollten Sie die wertvollen Daten auf dem Computer sichern.

Beschränkungen und Einschränkungen

  • Lokale Einstellungen für das Sicherheitsprotokoll können von einer Domänenrichtlinie überschrieben werden. In diesem Fall kann die Domänenrichtlinie die Unterkategorieeinstellung (auditpol /get /subcategory:"application generated") überschreiben. SQL Server hat keine Möglichkeit, zu erkennen, dass die Ereignisse, die sie überwachen möchten, nicht aufgezeichnet werden.

  • Ereignisse können verloren gehen, wenn die Überwachungsrichtlinie falsch konfiguriert ist. Die Windows-Überwachungsrichtlinie kann sich auf die SQL Server-Überwachung auswirken, wenn sie für das Schreiben in das Windows-Sicherheitsprotokoll konfiguriert ist. Das Windows-Sicherheitsprotokoll ist standardmäßig so konfiguriert, dass ältere Ereignisse überschrieben werden. Hierdurch werden immer die neuesten Ereignisse beibehalten. Wenn das Windows-Sicherheitsprotokoll jedoch nicht so eingestellt ist, dass ältere Ereignisse überschrieben werden, gibt das System das Windows-Ereignis 1104 aus (Protokoll ist voll). In diesem Fall geschieht Folgendes:

    • Es werden keine weiteren Sicherheitsereignisse aufgezeichnet.

    • SQL Server kann nicht erkennen, dass das System die Ereignisse im Sicherheitsprotokoll nicht aufzeichnen kann, was zu einem potenziellen Verlust von Überwachungsereignissen führt.

    • Nachdem der Administrator das Sicherheitsprotokoll korrigiert hat, wird die Protokollierung wieder wie gewohnt ausgeführt.

  • SQL Server-Überwachungsdatensätze enthalten wesentlich mehr Daten als normale Windows-Ereignisprotokolleinträge. Abhängig von der Konfiguration der Überwachungsspezifikation generiert SQL Server möglicherweise mehrere Tausend Überwachungsdatensätze in kurzer Zeit (Tausende pro Sekunde). Unter Zeiträumen mit hoher Auslastung kann dies zu nachteiligen Bedingungen führen, wenn die Überwachungsdatensätze entweder in das Anwendungsprotokoll oder in das Sicherheitsprotokoll geschrieben werden.

    Diese nachteiligen Bedingungen können folgendes umfassen:

    • Schnelles Durchlaufen des Ereignisprotokolls (Ereignisse werden sehr schnell überschrieben, wenn die Protokolldatei ihre Größenbeschränkung erreicht)

    • Andere Anwendungen oder Dienste, die aus dem Windows-Ereignisprotokoll gelesen werden, sind möglicherweise negativ betroffen.

    • Das zielbezogene Ereignisprotokoll kann von Administratoren aufgrund von Ereignissen, die so schnell überschrieben werden, nicht mehr verwendet werden

    Schritte, die Administratoren ausführen können, um diese nachteiligen Bedingungen zu mindern:

    1. Erhöhen Sie die Größe des Zielprotokolls (4 GB ist nicht unangemessen, wenn die Überwachungsspezifikation sehr detailliert ist).

    2. Verringern Sie die Anzahl der überwachten Ereignisse.

    3. Ausgabe der Überwachungsdatensätze in eine Datei anstelle der Ereignisprotokolle.

Berechtigungen

Sie müssen Windows-Administrator sein, um diese Einstellungen konfigurieren zu können.

Konfigurieren der Überwachungsobjektzugriffseinstellung in Windows mithilfe von auditpol

  1. Öffnen Sie eine Eingabeaufforderung mit Administratorberechtigungen.

    1. Navigieren Sie im Startmenü zur Eingabeaufforderung, und wählen Sie dann "Als Administrator ausführen" aus.

    2. Wenn das Dialogfeld "Benutzerkontensteuerung" geöffnet wird, wählen Sie "Weiter" aus.

  2. Führen Sie die folgende Anweisung aus, um die Überwachung über SQL Server zu aktivieren.

    auditpol /set /subcategory:"application generated" /success:enable /failure:enable
    
  3. Schließen Sie das Eingabeaufforderungsfenster.

Erteilen der Berechtigung zum Generieren von Sicherheitsprüfungen für ein Konto mithilfe eines Kontos secpol

  1. Wählen Sie für ein beliebiges Windows-Betriebssystem im Startmenü die Option "Ausführen" aus.

  2. Geben Sie secpol.msc "OK" ein, und wählen Sie dann "OK" aus. Wenn das Dialogfeld "Benutzerzugriffssteuerung" angezeigt wird, wählen Sie "Weiter" aus.

  3. Navigieren Sie im Tool für lokale Sicherheitsrichtlinien zur Zuweisung lokaler Benutzerrechte > zu den Sicherheitseinstellungen>.

  4. Öffnen Sie im Ergebnisbereich " Sicherheitsüberwachung generieren".

  5. Wählen Sie auf der Registerkarte "Lokale Sicherheitseinstellung " die Option "Benutzer oder Gruppe hinzufügen" aus.

  6. Geben Sie im Dialogfeld "Benutzer, Computer oder Gruppen auswählen" entweder den Namen des Benutzerkontos ein, z. B. domäne1\user1, und wählen Sie dann "OK" aus, oder wählen Sie "Erweitert" aus, und suchen Sie nach dem Konto.

  7. Klicken Sie auf OK.

  8. Schließen Sie das Tool "Sicherheitsrichtlinie".

  9. Starten Sie SQL Server neu, um diese Einstellung zu aktivieren.

Konfigurieren der Überwachungsobjektzugriffseinstellung in Windows mithilfe von secpol

  1. Wenn das Betriebssystem vor Windows Vista oder Windows Server 2008 liegt, wählen Sie im Startmenü "Ausführen" aus.

  2. Geben Sie secpol.msc "OK" ein, und wählen Sie dann "OK" aus. Wenn das Dialogfeld "Benutzerzugriffssteuerung" angezeigt wird, wählen Sie "Weiter" aus.

  3. Navigieren Sie im Tool "Lokale Sicherheitsrichtlinie" zu der Überwachungsrichtlinie für lokale Richtlinien > für Sicherheitseinstellungen>.

  4. Öffnen Sie im Ergebnisbereich den Zugriff auf überwachungsobjekt.

  5. Wählen Sie im Bereich Diese Versuche überwachen auf der Registerkarte Lokale Sicherheitseinstellung sowohl Erfolg als auch Fehleraus.

  6. Klicken Sie auf OK.

  7. Schließen Sie das Tool "Sicherheitsrichtlinie".

Siehe auch