Freigeben über


Erste Schritte mit Azure SQL Managed Instance Überwachung

Gilt für:Azure SQL Managed Instance

In diesem Artikel erfahren Sie, auditing mit SQL Server Audit in Azure SQL Managed Instance zu konfigurieren. Die Überwachung verfolgt Datenbankereignisse und schreibt sie in ein Überwachungsprotokoll in Ihrem Azure Speicherkonto.

Einrichten der Auditierung für Ihre Instanz in Azure Storage

Im folgenden Abschnitt wird die Konfiguration der Überwachung in Ihrer verwalteten SQL-Instanz beschrieben.

  1. Wechseln Sie zum portal Azure.

  2. Erstellen Sie einen Azure Storage container wo Überwachungsprotokolle gespeichert sind.

    1. Navigieren Sie zum Azure Speicherkonto, in dem Sie Ihre Überwachungsprotokolle speichern möchten.

      • Verwenden Sie ein Speicherkonto in derselben Region wie die von SQL verwaltete Instanz, damit Sie regionsübergreifende Lese-/Schreibvorgänge vermeiden können.
      • Wenn sich Ihr Speicherkonto hinter einem virtuellen Netzwerk oder einer Firewall befindet, lesen Sie Zugriff von einem virtuellen Netzwerk gewähren.
      • Wenn Sie den Aufbewahrungszeitraum von 0 (unbegrenzte Aufbewahrung) auf einen anderen Wert ändern, gilt die Aufbewahrung nur für Protokolle, die geschrieben wurden, nachdem der Aufbewahrungswert geändert wurde. Protokolle, die während des Zeitraums geschrieben wurden, in dem die Aufbewahrung unbegrenzt festgelegt wurde, bleiben erhalten, auch nachdem die Aufbewahrung aktiviert wurde.
    2. Wechseln Sie im Speicherkonto zu Übersicht, und wählen Sie Blobs aus.

      Screenshot mit dem Azure Blobs widget.

    3. Wählen Sie im Menü oben + Container aus, um einen neuen Container zu erstellen.

      Screenshot des Symbols zur Darstellung der Blobcontainer-Erstellung.

    4. Geben Sie einen Namen für den Container an, legen Sie den Wert für Öffentliche Zugriffsebene auf Privat fest, und wählen Sie dann OK aus.

      Screenshot der Einrichtung der Blobcontainer-Konfiguration.

    Wichtig

    Kunden, die einen unveränderlichen Protokollspeicher für ihre Überwachungsereignisse auf Server- oder Datenbankebene konfigurieren möchten, sollten den instructions folgen, die von Azure Storage bereitgestellt werden. Stellen Sie sicher, dass Sie beim Konfigurieren des unveränderlichen Blob-Speichers die Option "Zusätzliche Anhänge zulassen" auswählen.

  3. Nachdem Sie den Container für die Überwachungsprotokolle erstellt haben, gibt es zwei Möglichkeiten, ihn als Ziel für die Überwachungsprotokolle zu konfigurieren: verwenden von T-SQL oder verwenden der Benutzeroberfläche SQL Server Management Studio (SSMS):

  • Konfigurieren des BLOB-Speichers für Überwachungsprotokolle mit T-SQL:

    1. Wählen Sie in der Liste der Container den neu erstellten Container und dann Containereigenschaften aus.

      Screenshot der Schaltfläche für die Blobcontainer-Eigenschaften.

    2. Kopieren Sie die Container-URL, indem Sie das Kopiersymbol auswählen, und speichern Sie die URL für die zukünftige Verwendung, beispielsweise in Notepad. Das Format der Container-URL sollte dem folgenden entsprechen: https://<StorageName>.blob.core.windows.net/<ContainerName>

      Screenshot der URL zum Kopieren des Blobcontainers.

    3. Generieren Sie ein Azure Storage SAS-Token, um sql Managed Instance-Überwachungsberechtigungen für das Speicherkonto zu gewähren:

      • Navigieren Sie zum Azure Speicherkonto, in dem Sie den Container im vorherigen Schritt erstellt haben.

      • Wählen Sie im Menü Speichereinstellungen die Option Shared Access Signature aus.

        Symbol der Shared Access Signature im Speichereinstellungsmenü.

      • Konfigurieren Sie die SAS wie folgt:

        • Zulässige Dienste: Blob

        • Startdatum: Verwenden Sie zur Vermeidung von Zeitzonenproblemen das gestrige Datum.

        • Enddatum: Wählen Sie das Datum aus, an dem dieses SAS-Token abläuft.

          Hinweis

          Um Überwachungsfehler zu vermeiden, erneuern Sie das Token nach Ablauf.

        • Wählen Sie SAS generieren aus.

          Screenshot der SAS-Konfiguration.

      • Das SAS-Token wird unten angezeigt. Kopieren Sie das Token, indem Sie das Kopiersymbol auswählen, und speichern Sie es (z. B. im Editor) für die zukünftige Verwendung.

        Screenshot des SAS-Token-Kopiervorgangs.

        Wichtig

        Entfernen Sie das Fragezeichen (?) am Anfang des Tokens.

    4. Stellen Sie über SQL Server Management Studio oder ein anderes unterstütztes Tool eine Verbindung mit Ihrer SQL-verwalteten Instanz her.

    5. Führen Sie die folgende T-SQL-Anweisung aus, um neue Anmeldeinformationen zu erstellen. Verwenden Sie dabei die Container-URL und das SAS-Token, das bzw. die Sie in den vorherigen Schritten erstellt haben:

      CREATE CREDENTIAL [<container_url>]
      WITH IDENTITY='SHARED ACCESS SIGNATURE',
      SECRET = '<SAS KEY>'
      GO
      
    6. Führen Sie die folgende T-SQL-Anweisung aus, um eine neue Serverüberwachung zu erstellen (wählen Sie einen eigenen Namen für die Überwachung aus, und verwenden Sie die Container-URL, die Sie in den vorherigen Schritten erstellt haben). Sofern nicht angegeben, wird für RETENTION_DAYS der Standardwert „0“ verwendet (unbegrenzte Aufbewahrungsdauer):

      CREATE SERVER AUDIT [<your_audit_name>]
      TO URL (PATH ='<container_url>', RETENTION_DAYS = <integer>);
      GO
      
    7. Erstellen Sie als Nächstes eine Spezifikation für die Serverüberwachung oder die Datenbanküberwachung.

  • Konfigurieren Sie den Blob-Speicher für Überwachungsprotokolle mit SQL Server Management Studio 18 und späteren Versionen:

    1. Stellen Sie mithilfe der SQL Server Management Studio-Benutzeroberfläche eine Verbindung mit der von SQL verwalteten Instanz her.

    2. Erweitern Sie die Stammnotiz von Objekt-Explorer.

    3. Erweitern Sie den Knoten Sicherheit, klicken Sie mit der rechten Maustaste auf den Knoten Überwachungen, und wählen Sie Neue Überwachung aus:

      Screenshot, der zeigt, wie man den Sicherheits- und Überwachungsknoten erweitert.

    4. Vergewissern Sie sich, dass URL in Überwachungsziel ausgewählt ist, und wählen Sie Durchsuchen aus:

      Screenshot zeigt, wie man Azure Storage durchsucht.

    5. (Optional) Melden Sie sich bei Ihrem Azure Konto an:

      Screenshot zeigt, wie Sie sich bei Azure anmelden können.

    6. Wählen Sie in den Dropdownlisten ein Abonnement, ein Speicherkonto und einen BLOB-Container aus, oder erstellen Sie Ihren eigenen Container, indem Sie "Erstellen" auswählen. Nachdem Sie fertig sind, wählen Sie "OK" aus:

      Wählen Sie Azure-Abonnement, Speicherkonto und Blob-Container aus.

    7. Wählen Sie im Dialogfeld Überwachung erstellen die Option OK aus.

      Hinweis

      Wenn Sie die SQL Server Management Studio Benutzeroberfläche zum Erstellen eines Audits verwenden, wird automatisch eine Anmeldeinformation für den Container mit einem SAS-Schlüssel erstellt.

Nachdem Sie den BLOB-Container als Ziel für die Überwachungsprotokolle konfiguriert haben, erstellen und aktivieren Sie eine Serverüberwachungsspezifikation oder Datenbanküberwachungsspezifikation wie für SQL Server:

Verwenden Sie die folgende T-SQL-Anweisung, um die Serverüberwachung zu aktivieren:

ALTER SERVER AUDIT [<your_audit_name>]
WITH (STATE = ON);
GO

Weitere Informationen:

Überwachung von Microsoft-Support Vorgängen

Durch das Prüfen von Vorgängen im Zusammenhang mit Microsoft-Support für SQL Managed Instance können Sie die Aktivitäten von Microsoft-Support-Technikern überwachen, wenn diese während einer Supportanfrage auf Ihren Server zugreifen müssen. In Kombination mit der Überwachung sorgt diese Funktion für eine höhere Personaltransparenz und ermöglicht Anomalieerkennung, Trendvisualisierung und die Verhinderung von Datenverlusten.

So aktivieren Sie die Überwachung von Microsoft-Support Vorgängen Navigieren Sie zu Überwachung erstellen unter Security>Audit in Ihrer SQL-Instanz verwalten, und wählen Sie Microsoft support Vorgänge aus.

Screenshot des Symbols „Überwachung erstellen“.

Hinweis

Sie müssen eine separate Serverprüfung für die Überprüfung von Microsoft-Vorgängen erstellen. Wenn Sie dieses Kontrollkästchen für eine vorhandene Überwachung aktivieren, überschreibt es die Überwachung und protokolliert nur Supportvorgänge.

Einrichten der Überwachung für Ihren Server auf Event Hubs oder Azure Monitor Protokollen

Überwachungsprotokolle aus einer sql-verwalteten Instanz können an Azure Event Hubs oder Azure Monitor Protokolle gesendet werden. In diesem Abschnitt wird beschrieben, wie Sie diese Konfiguration erstellen:

  1. Navigieren Sie im portal Azure zur verwalteten SQL-Instanz.

  2. Wählen Sie Diagnoseeinstellungen aus.

  3. Wählen Sie Diagnose aktivieren. Wenn die Diagnose bereits aktiviert ist, ist stattdessen +Diagnoseeinstellung hinzufügen verfügbar.

  4. Wählen Sie in der Liste der Protokolle SQLSecurityAuditEvents aus.

  5. Wenn Sie Microsoft Supportvorgänge konfigurieren, wählen Sie DevOps-Überwachungsprotokolle in der Liste der Protokolle aus.

  6. Wählen Sie ein Ziel für die Überwachungsereignisse aus: Event Hubs, Azure Monitor Protokolle oder beides. Konfigurieren Sie für jedes Ziel die erforderlichen Parameter (z. B. Log Analytics Arbeitsbereich).

  7. Wählen Sie Speichern aus.

    Screenshot der Konfiguration von Diagnoseeinstellungen.

  8. Stellen Sie eine Verbindung mit der von SQL verwalteten Instanz mithilfe von SQL Server Management Studio (SSMS) oder einem anderen unterstützten Client her.

  9. Führen Sie die folgende T-SQL-Anweisung aus, um eine Serverüberwachung zu erstellen:

    CREATE SERVER AUDIT [<your_audit_name>] TO EXTERNAL_MONITOR;
    GO
    
  10. Erstellen und aktivieren Sie eine Serverüberwachungsspezifikation oder Datenbanküberwachungsspezifikation wie für SQL Server:

  11. Aktivieren Sie die Serverüberwachung, die Sie in Schritt 8 erstellt haben:

    ALTER SERVER AUDIT [<your_audit_name>]
    WITH (STATE = ON);
    GO
    

Einrichten der Überwachung mithilfe von T-SQL

-- Create audit without OPERATOR_AUDIT - Will audit standard SQL Audit events
USE [master];
GO

CREATE SERVER AUDIT testingauditnodevops TO EXTERNAL_MONITOR;
GO

CREATE SERVER AUDIT SPECIFICATION testingaudit_Specification_nodevops
FOR SERVER AUDIT testingauditnodevops ADD (SUCCESSFUL_LOGIN_GROUP),
    ADD (BATCH_COMPLETED_GROUP),
    ADD (FAILED_LOGIN_GROUP)
WITH (STATE = ON);
GO

ALTER SERVER AUDIT testingauditnodevops
    WITH (STATE = ON);
GO

-- Create separate audit without OPERATOR_AUDIT ON - Will audit Microsoft Support Operations
USE [master]

CREATE SERVER AUDIT testingauditdevops TO EXTERNAL_MONITOR
    WITH (OPERATOR_AUDIT = ON);
GO

CREATE SERVER AUDIT SPECIFICATION testingaudit_Specification_devops
FOR SERVER AUDIT testingauditdevops ADD (SUCCESSFUL_LOGIN_GROUP),
    ADD (BATCH_COMPLETED_GROUP),
    ADD (FAILED_LOGIN_GROUP)
WITH (STATE = ON);
GO

ALTER SERVER AUDIT testingauditdevops
    WITH (STATE = ON);
GO

Verwenden von Überwachungsprotokollen

Protokolle nutzen, die in Azure Storage gespeichert sind

Es gibt verschiedene Methoden zum Anzeigen von Blobüberwachungsprotokollen.

  • Sie können die Systemfunktion sys.fn_get_audit_file (T-SQL) verwenden, um die Überwachungsprotokolldaten im tabellarischen Format zurückzugeben.

  • Sie können Überwachungsprotokolle mithilfe eines Tools wie Azure Storage-Explorer untersuchen. In Azure Storage werden Überwachungsprotokolle als Sammlung von BLOB-Dateien in einem Container gespeichert, der zum Speichern der Überwachungsprotokolle definiert wurde. Weitere Informationen zur Hierarchie des Speicherordners, zu Namenskonventionen und zum Protokollformat finden Sie in der Formatreferenz für Blobüberwachungsprotokolle.

  • Eine vollständige Liste der Methoden für den Überwachungsprotokollverbrauch finden Sie unter Get started with Azure SQL-Datenbank auditing.

Nutzen von Protokollen, die in Event Hubs gespeichert sind

Um Auditprotokolle aus Event Hubs zu nutzen, müssen Sie einen Stream einrichten, um Ereignisse zu verarbeiten und in ein Ziel zu schreiben. Weitere Informationen finden Sie in der Azure Event Hubs Dokumentation.

Verarbeiten und Analysieren von Protokollen, die in Azure Monitor Logs gespeichert sind

Wenn Überwachungsprotokolle in Azure Monitor Protokolle geschrieben werden, sind sie im Log Analytics Arbeitsbereich verfügbar, in dem Sie erweiterte Suchvorgänge für die Überwachungsdaten ausführen können. Navigieren Sie als Ausgangspunkt zum Log Analytics Arbeitsbereich. Wählen Sie im Abschnitt Allgemein die Option Protokolle aus, und geben Sie eine Basisabfrage wie z. B. search "SQLSecurityAuditEvents" ein, um die Überwachungsprotokolle anzuzeigen.

Mit Azure Monitor-Protokollen erhalten Sie Echtzeit-Einblicke in die Betriebsabläufe und können mit integrierter Suche und benutzerdefinierten Dashboards Millionen von Datensätzen auf allen Arbeitslasten und Servern einfach analysieren. Weitere Informationen zu Azure Monitor Protokoll-Suchsprache und -befehlen finden Sie unter Azure Monitor Protokollsuchreferenz.