Tutorial: Konfigurieren von Überwachungsprotokollen mithilfe von Azure Database for MySQL – Flexibler Server

GILT FÜR: Azure Database for MySQL – Flexibler Server

Sie können Azure Database for MySQL – flexibler Server zum Konfigurieren von Überwachungsprotokollen verwenden. Überwachungsprotokolle können zum Nachverfolgen von Aktivitäten auf Datenbankebene verwendet werden. Zu diesen Aktivitäten zählen u. a. Ereignisse im Zusammenhang mit Verbindungen, der DDL (Data Definition Language, Datendefinitionssprache) und der DML (Data Manipulation Language, Datenbearbeitungssprache). Diese Arten von Protokollen werden häufig zu Compliancezwecken verwendet. Normalerweise verwenden Sie die Datenbanküberwachung für Folgendes:

  • Erfassen aller Aktionen, die innerhalb eines bestimmten Schemas, einer bestimmten Tabelle oder einer bestimmten Zeile ausgeführt werden oder sich auf bestimmte Inhalte auswirken
  • Verhindern, dass Benutzer (oder andere Personen) basierend auf ihrer Verantwortlichkeit nicht zulässige Aktionen ausführen
  • Untersuchen verdächtiger Aktivitäten
  • Überwachen und Sammeln von Daten zu bestimmten Datenbankaktivitäten

In diesem Artikel wird erläutert, wie Sie MySQL-Überwachungsprotokolle, Log Analytics-Tools oder eine Arbeitsmappenvorlage verwenden, um Überwachungsinformationen für Azure Database for MySQL – flexibler Server zu visualisieren.

In diesem Tutorial lernen Sie Folgendes:

  • Konfigurieren der Überwachung mithilfe des Azure-Portals oder der Azure CLI
  • Einrichten der Diagnose
  • Anzeigen von Überwachungsprotokollen mithilfe von Log Analytics
  • Anzeigen von Überwachungsprotokollen mithilfe von Arbeitsmappen

Voraussetzungen

Konfigurieren der Überwachung über das Azure-Portal

  1. Melden Sie sich beim Azure-Portal an.

  2. Wählen Sie Ihre Flexible Server-Instanz aus.

  3. Wählen Sie im Bereich auf der linken Seite unter Einstellungen die Option Serverparameter aus.

    Screenshot: Liste „Serverparameter“

  4. Wählen Sie für den Parameter audit_log_enabled die Option ON aus.

    Screenshot: Auf „ON“ festgelegter Parameter „audit_log_enabled

  5. Wählen Sie für den Parameter audit_log_events in der Dropdownliste die zu protokollierenden Ereignistypen aus.

    Screenshot: Ereignisoptionen in der Dropdownliste „audit_log_events“

  6. Geben Sie für die Parameter audit_log_exclude_users und audit_log_include_users alle MySQL-Benutzer an, die in die Protokollierung einbezogen bzw. von ihr ausgeschlossen werden sollen, indem Sie ihre MySQL-Benutzernamen eingeben.

    Screenshot: MySQL-Benutzernamen, die in die Protokollierung einbezogen bzw. von ihr ausgeschlossen werden sollen

  7. Wählen Sie Speichern aus.

    Screenshot: Schaltfläche „Speichern“ zum Speichern der Änderungen in den Parameterwerten

Konfigurieren der Überwachung mithilfe der Azure CLI

Alternativ können Sie die Überwachung für Ihren flexiblen Server über die Azure CLI mit dem folgenden Befehl aktivieren und konfigurieren:

# Enable audit logs
az mysql flexible-server parameter set \
--name audit_log_enabled \
--resource-group myresourcegroup \
--server-name mydemoserver \
--value ON

Einrichten der Diagnose

Überwachungsprotokolle sind in die Diagnoseeinstellungen von Azure Monitor integriert, sodass Sie Ihre Protokolle an eine von drei Datensenken weiterleiten können:

  • Einen Log Analytics-Arbeitsbereich.
  • Einen Event Hub
  • Ein Speicherkonto

Hinweis

Es wird empfohlen, die Datensenken zu erstellen, bevor Sie die Diagnoseeinstellungen konfigurieren. Sie können auf die Überwachungsprotokolle in den von Ihnen konfigurierten Datensenken zugreifen. Es kann bis zu 10 Minuten dauern, bis die Protokolle angezeigt werden.

  1. Wählen Sie im linken Bereich unter Überwachung die Option Diagnoseeinstellungen aus.

  2. Wählen Sie im Bereich Diagnoseeinstellungen den Eintrag Diagnoseeinstellung hinzufügen aus.

    Screenshot: Link „Diagnoseeinstellung hinzufügen“ im Bereich „Diagnoseeinstellungen“

  3. Geben Sie im Feld Name einen Name für die Diagnoseeinstellung ein.

    Screenshot: Bereich „Diagnoseeinstellungen“ zum Auswählen von Konfigurationsoptionen

  4. Geben Sie an, an welche Ziele (Log Analytics-Arbeitsbereich, Event Hub oder Speicherkonto) die Überwachungsprotokolle gesendet werden sollen, indem Sie die entsprechenden Kontrollkästchen aktivieren.

    Hinweis

    In diesem Tutorial senden Sie die Überwachungsprotokolle an einen Log Analytics-Arbeitsbereich.

  5. Aktivieren Sie unter Protokoll für den Protokolltyp das Kontrollkästchen MySqlAuditLogs.

  6. Nachdem Sie die Datensenken konfiguriert haben, an die die Überwachungsprotokolle weitergeleitet werden sollen, wählen Sie Speichern aus.

Anzeigen von Überwachungsprotokollen mithilfe von Log Analytics

  1. Wählen Sie in Log Analytics im linken Bereich unter Überwachung die Option Protokolle aus.

  2. Schließen Sie das Fenster Abfragen.

    Screenshot: Log Analytics-Bereich „Abfragen“

  3. Im Abfragefenster können Sie die auszuführende Abfrage schreiben. Beispielsweise wurde die folgende Abfrage verwendet, um eine Zusammenfassung der überwachten Ereignisse auf einem bestimmten Server zu ermitteln:

    AzureDiagnostics
        |where Category =='MySqlAuditLogs' 
        |project TimeGenerated, Resource, event_class_s, event_subclass_s, event_time_t, user_s ,ip_s , sql_text_s 
        |summarize count() by event_class_s,event_subclass_s 
        |order by event_class_s 
    

    Screenshot: Log Analytics-Beispielabfrage zum Ermitteln einer Zusammenfassung der überwachten Ereignisse auf einem bestimmten Server

Anzeigen von Überwachungsprotokollen mithilfe von Arbeitsmappen

Die für die Überwachung verwendete Arbeitsmappenvorlage setzt voraus, dass Sie Diagnoseeinstellungen erstellen, um Plattformprotokolle zu senden.

  1. Wählen Sie in Azure Monitor im linken Bereich Aktivitätsprotokoll und anschließend Diagnoseeinstellungen aus.

    Screenshot: Registerkarte „Diagnoseeinstellungen“ im Azure Monitor-Bereich „Aktivitätsprotokoll“

  2. Im Bereich Diagnoseeinstellung können Sie eine neue Einstellung hinzufügen oder eine vorhandene Einstellung bearbeiten. Jede Einstellung kann jeweils höchstens einen der Zieltypen aufweisen.

    Screenshot: Azure Monitor-Bereich „Diagnoseeinstellung“ zum Auswählen der Protokollziele

    Hinweis

    Sie können auf die Protokolle für langsame Abfragen in den Datensenken (Log Analytics-Arbeitsbereich, Speicherkonto oder Event Hub) zugreifen, die Sie bereits konfiguriert haben. Es kann bis zu 10 Minuten dauern, bis die Protokolle angezeigt werden.

  3. Wählen Sie im Azure-Portal im linken Bereich unter Überwachung für Ihre Instanz von Azure Database for MySQL – flexibler Server die Option Arbeitsmappen aus.

  4. Wählen Sie die Arbeitsmappe Überwachung aus.

    Screenshot: Alle Arbeitsmappen im Arbeitsmappenkatalog

In der Arbeitsmappe können Sie die folgenden Visualisierungen anzeigen:

  • Administrative Aktionen für den Dienst
  • Zusammenfassung der Überwachung
  • Zusammenfassung der Überwachungsverbindungsereignisse
  • Überwachungsverbindungsereignisse
  • Zusammenfassung des Tabellenzugriffs
  • Identifizierte Fehler

Screenshot: Arbeitsmappenvorlage für administrative Aktionen für den Dienst

Screenshot: Arbeitsmappenvorlage „Verbindungsereignisse überwachen“

Hinweis

  • Sie können diese Vorlagen auch entsprechend Ihren Anforderungen bearbeiten und anpassen. Weitere Informationen finden Sie im Abschnitt „Bearbeitungsmodus“ unter Azure-Arbeitsmappen.
  • Zur Schnellansicht können Sie die Arbeitsmappen oder die Log Analytics-Abfrage auch an Ihr Dashboard anheften. Weitere Informationen finden Sie unter Erstellen eines Dashboards im Azure-Portal.

In der Ansicht für administrative Aktionen für den Dienst finden Sie Details zu Aktivitäten, die für den Dienst ausgeführt werden. Mithilfe dieser Details können Sie für alle Schreibvorgänge (PUT, POST, DELETE) für die Ressourcen Ihres Abonnements ermitteln, welcher Benutzer welchen Vorgang zu welchem Zeitpunkt ausgeführt hat.

Sie können weitere Visualisierungen verwenden, um die Details der Datenbankaktivität nachzuvollziehen. Die Datenbanksicherheit setzt sich aus vier Teilen zusammen:

  • Serversicherheit: Mit der Serversicherheit soll verhindert werden, dass unbefugte Personen auf die Datenbank zugreifen.
  • Datenbankverbindung: Der Administrator muss überprüfen, ob Datenbankupdates von autorisierten Mitarbeitern durchgeführt wurden.
  • Tabellenzugriffssteuerung: Hier werden die Zugriffsschlüssel der autorisierten Benutzer und die Tabellen in der Datenbank angezeigt, die sie jeweils verarbeiten dürfen.
  • Einschränkung des Datenbankzugriffs: Dies ist insbesondere für Benutzer wichtig, die eine Datenbank ins Internet hochgeladen haben, und verhindert, dass externe Quellen auf Ihre Datenbank zugreifen können.

Nächste Schritte