Erstellen einer Serverüberwachung und einer Serverüberwachungsspezifikation

Gilt für:SQL Server

In diesem Artikel wird beschrieben, wie Sie eine Server-Audit- und Server-Audit-Spezifikation in SQL Server mithilfe von SQL Server Management Studio oder Transact-SQL erstellen. Die Überwachung einer Instanz von SQL Server oder einer SQL Server-Datenbank umfasst die Verfolgung und Protokollierung von Ereignissen, die auf dem System auftreten. Das SQL Server Audit -Objekt listet eine einzelne Instanz an Aktionen oder Aktionsgruppen auf Server- oder Datenbankebene auf, die überwacht werden soll. Die Überwachung wird auf SQL Server-Instanzebene ausgeführt. Es können mehrere Überwachungen pro SQL Server-Instanz vorliegen. Das Serverüberprüfungsspezifikation-Objekt gehört zu einer Überprüfung. Sie können eine Serverüberwachungsspezifikation pro Überwachung erstellen, da beide im SQL Server-Instanzbereich erstellt werden. Weitere Informationen finden Sie unter SQL Server Audit (Datenbank-Engine).

In diesem Thema

Bevor Sie beginnen

Beschränkungen und Einschränkungen

  • Ein Audit muss vorhanden sein, bevor Sie dafür eine Serveraudit-Spezifikation erstellen. Wenn eine Serverüberwachungsspezifikation erstellt wird, befindet sie sich im deaktivierten Zustand.

  • Die CREATE SERVER AUDIT-Anweisung liegt im Gültigkeitsbereich einer Transaktion. Wenn die Transaktion zurückgesetzt wird, wird auch die Anweisung zurückgesetzt.

Sicherheit

Berechtigungen

  • Zum Erstellen, Ändern oder Löschen einer Serverüberwachung müssen Prinzipale über die Berechtigung ALTER ANY SERVER AUDIT oder die Berechtigung CONTROL SERVER verfügen.

  • Benutzer mit der ALTER ANY-Berechtigung SERVER AUDIT können Serverüberwachungsspezifikationen erstellen und an jede beliebige Überwachung binden.

  • Nachdem eine Serverüberwachungsspezifikation erstellt wurde, kann sie von Prinzipalen mit der Berechtigung CONTROL SERVER oder ALTER ANY SERVER AUDIT, vom Konto sysadmin oder von Prinzipalen angezeigt werden, die expliziten Zugriff auf die Serverüberwachungsspezifikation haben.

Verwendung von SQL Server Management Studio

So erstellen Sie eine Serverüberwachung

  1. Erweitern Sie im Objekt-Explorer den Ordner Sicherheit .

  2. Klicken Sie mit der rechten Maustaste auf den Ordner Überwachungen, und wählen Sie dann Neue Überwachung... aus.

    Die folgenden Optionen befinden sich im Dialogfeld Überwachung erstellen auf der Seite Allgemein :

    Überwachungsname
    Der Name der Prüfung. Dies wird automatisch generiert, wenn Sie ein neues Audit erstellen, kann aber bearbeitet werden.

    Warteschlangenverzögerung (in Millisekunden)
    Gibt in Millisekunden den Zeitraum an, der verstreichen kann, bevor die Verarbeitung von Überwachungsaktionen erzwungen wird. Der Wert 0 steht für eine synchrone Übermittlung. Der standardmäßige Mindestwert beträgt 1000 (1 Sekunde). Der maximale Wert beträgt 2.147.483.647 (2.147.483,647 Sekunden oder 24 Tage, 20 Stunden, 31 Minuten und 23,647 Sekunden).

    Bei Auditprotokollfehler:
    Fortsetzen
    SQL Server -Vorgänge werden fortgesetzt. Überwachungsdatensätze werden nicht beibehalten. Die Überwachung versucht weiterhin, Ereignisse zu protokollieren und wird fortgesetzt, wenn die Fehlerbedingung aufgelöst wurde. Durch Auswählen der Continue -Option können unter Umständen unüberwachte Aktivitäten ausgeführt werden, die gegen Ihre Sicherheitsrichtlinien verstoßen. Wählen Sie diese Option, wenn die weitere Verwendung von Datenbank-Engine wichtiger als die Beibehaltung einer vollständigen Überwachung ist. Dies ist die Standardauswahl.

    Herunterfahren des Servers
    Erzwingt das Herunterfahren des Servers, wenn die Serverinstanz, die in das Ziel schreibt, keine Daten in das Auditziel schreiben kann. Die Anmeldung, die dies ausgibt, muss über die SHUTDOWN -Berechtigung verfügen. Wenn die Anmeldung nicht über diese Berechtigung verfügt, schlägt diese Funktion fehl, und es wird eine Fehlermeldung ausgegeben. Es treten keine überwachten Ereignisse auf. Wählen Sie diese Option aus, wenn ein Überwachungsfehler die Sicherheit oder die Integrität des Systems beeinträchtigen konnte.

    Fehler bei Vorgang
    In Fällen, in denen das SQL Server Audit keine Informationen in das Überwachungsprotokoll schreiben kann, bewirkt diese Option, dass Datenbankaktionen fehlschlagen, wenn sie andernfalls überwachte Ereignisse verursachen würden. Es treten keine überwachten Ereignisse auf. Aktionen, die keine überwachten Ereignisse verursachen, können fortgesetzt werden. Die Überwachung versucht weiterhin, Ereignisse zu protokollieren und wird fortgesetzt, wenn die Fehlerbedingung aufgelöst wurde. Wählen Sie diese Option, wenn die Beibehaltung einer vollständigen Überwachung wichtiger als der Vollzugriff auf Datenbank-Engine ist.

    Wichtig

    Wenn sich die Überwachung in einem fehlerhaften Status befindet, kann die dedizierte Administratorverbindung weiterhin überwachte Ereignisse ausführen.

    Überwachungsziel (Liste)
    Gibt das Ziel der Auditdaten an. Die verfügbaren Optionen sind eine Binärdatei, das Windows-Anwendungsprotokoll oder das Windows-Sicherheitsprotokoll. SQL Server kann nicht in das Windows-Sicherheitsprotokoll schreiben, ohne zusätzliche Einstellungen in Windows zu konfigurieren. Weitere Informationen finden Sie unter Schreiben von SQL-Serverüberwachungsereignissen in das Sicherheitsprotokoll.

    Dateipfad
    Gibt den Speicherort des Ordners an, in den Überwachungsdaten geschrieben werden, wenn das Überwachungsziel eine Datei ist.

    Auslassungspunkte (…)
    Öffnet das Dialogfeld Ordner suchen -server_name, um einen Dateipfad anzugeben oder einen Ordner zu erstellen, in den die Überwachungsdatei geschrieben wird.

    Maximale Größe der Auditdatei:
    Maximale Anzahl der Rollover-Dateien
    Wenn die maximale Anzahl von Überwachungsdateien erreicht wird, werden die ältesten Überwachungsdateien durch neuen Dateiinhalt überschrieben.

    Maximale Dateien
    Legt fest, dass jede Aktion, die zusätzliche Überwachungsereignisse erzeugt, mit einem Fehler fehlschlägt, wenn die maximale Anzahl von Überwachungsdateien erreicht ist.

    Unbegrenzt (Kontrollkästchen)
    Wenn das Kontrollkästchen Unbegrenzt unter Maximale Anzahl Rolloverdateien aktiviert ist, gibt es keine Begrenzung für die Anzahl der Auditdateien, die erstellt werden. Das Kontrollkästchen Unbegrenzt ist standardmäßig ausgewählt und gilt sowohl für die Auswahl Maximale Anzahl Rolloverdateien als auch für die Auswahl Maximale Anzahl Dateien.

    Anzahl der Dateien (Feld)
    Gibt die Anzahl von Überwachungsdateien an, die erstellt werden können, und zwar bis zu 2.147.483.647. Diese Option ist nur verfügbar, wenn Unbegrenzt deaktiviert ist.

    Maximale Dateigröße
    Gibt die maximale Größe für eine Überwachungsdatei entweder in Megabyte (MB), Gigabyte (GB) oder Terabyte (TB) an. Sie können eine Zahl von bis zu 2.147.483.647 TB angeben. Durch Aktivieren des Kontrollkästchen Unbegrenzt gibt es keine Begrenzung der Dateigröße. Das Kontrollkästchen Unbegrenzt ist standardmäßig aktiviert.

    Speicherplatz reservieren (Kontrollkästchen)
    Gibt an, dass der auf dem Datenträger vorab zugeordnete Speicherplatz der festgelegten maximalen Dateigröße entspricht. Diese Einstellung kann nur verwendet werden, wenn das Kontrollkästchen Unbegrenzt unter Maximale Dateigröße deaktiviert ist. Dieses Kontrollkästchen ist standardmäßig deaktiviert.

  3. Geben Sie auf der Seite Filter optional ein Prädikat oder eine WHERE -Klausel für die Serverüberwachung ein, um Optionen anzugeben, die auf der Seite Allgemein nicht verfügbar sind. Schließen Sie das Prädikat in Klammern ein; z. B.: (object_name = 'EmployeesTable').

  4. Nachdem Sie alle Optionen ausgewählt haben, klicken Sie auf OK.

So erstellen Sie eine Serverüberwachungsspezifikation

  1. Klicken Sie im Objekt-Explorer auf das Pluszeichen, um den Ordner Sicherheit zu erweitern.

  2. Klicken Sie mit der rechten Maustaste auf den Ordner Serverüberwachungsspezifikationen, und wählen Sie dann Neue Serverüberwachungsspezifikation... aus.

    Die folgenden Optionen sind im Dialogfeld Serverüberwachungsspezifikation erstellen verfügbar.

    Name
    Der Name der Serverüberwachungsspezifikation. Er wird automatisch generiert, wenn Sie eine neue Serverüberwachungsspezifikation erstellen, er kann jedoch bearbeitet werden.

    Überwachung
    Der Name einer vorhandenen Serverüberprüfung. Geben Sie den Namen der Prüfung ein, oder wählen Sie ihn aus der Liste aus.

    Überwachungsaktionstyp
    Gibt die auf Serverebene aufzuzeichnenden Überwachungsaktionsgruppen und Überwachungsaktionen an. Eine Liste der Überwachungsaktionsgruppen auf Serverebene und Überwachungsaktionen sowie eine Beschreibung der darin enthaltenen Ereignisse finden Sie unter SQL Server Audit-Aktionsgruppen und -Aktionen.

    Objektschema
    Zeigt das Schema für den angegebenen Objektnamenan.

    Objektnamen
    Der Name des zu überwachenden Objekts. Dies gilt nur für Prüfaktionen; es gilt nicht für Prüfgruppen.

    Auslassungspunkte (…)
    Öffnet das Dialogfeld Objekte auswählen , in dem Sie anhand des angegebenen Überwachungsaktionstypsnach einem verfügbaren Objekt suchen und es auswählen können.

    Prinzipalname
    Das Konto, anhand dessen die Überwachung für das zu überwachende Objekt gefiltert wird.

    Auslassungspunkte (…)
    Öffnet das Dialogfeld Objekte auswählen , in dem Sie nach einem verfügbaren Objekt anhand des angegebenen Objektnamenssuchen und es auswählen können.

  3. Klicken Sie auf OK, wenn Sie fertig sind.

Verwenden von Transact-SQL

So erstellen Sie eine Serverüberwachung

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.

  3. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen.

    -- Creates a server audit called "HIPAA_Audit" with a binary file as the target and no options.  
    CREATE SERVER AUDIT HIPAA_Audit  
        TO FILE ( FILEPATH ='E:\SQLAudit\' );  
    

Hinweis

Auch wenn Sie einen UNC-Pfad als Ziel der Überwachungsdatei verwenden können, ist Vorsicht geboten. Wenn für diese Dateifreigabe eine Netzwerklatenz auftritt, können bei SQL Server Leistungseinbußen auftreten, da Threads auf den Abschluss eines Überprüfungsschreibvorgangs warten würden, bevor sie den Vorgang fortsetzen. Im SQL Server-Fehlerprotokoll, z. B. 17894, können Sie verschiedene Fehlermeldungen beobachten:

2020-02-07 12:21:35.100 Server-Dispatcher (0x7954) aus dem Dispatcherpool „XE Engine-Haupt-Dispatcherpool“ Worker 0x00000058E7300000 scheint auf Knoten 0 nicht nachzugeben.

So erstellen Sie eine Serverüberwachungsspezifikation

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.

  3. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen.

    /*Creates a server audit specification called "HIPAA_Audit_Specification" that audits failed logins for the SQL Server audit "HIPAA_Audit" created above.  
    */  
    
    CREATE SERVER AUDIT SPECIFICATION HIPAA_Audit_Specification  
    FOR SERVER AUDIT HIPAA_Audit  
        ADD (FAILED_LOGIN_GROUP);  
    GO  
    -- Enables the audit.   
    
    ALTER SERVER AUDIT HIPAA_Audit  
    WITH (STATE = ON);  
    GO  
    

Weitere Informationen finden Sie unter CREATE SERVER AUDIT (Transact-SQL) und CREATE SERVER AUDIT SPECIFICATION (Transact-SQL).