Wie man DB Audit Trailing für MS Azure PostgreSQL konfiguriert
Zusammen mit anderen Funktionalitäten bietet DataSunrise ein dediziertes Audit-Tool, das DB Audit Trailing, basierend auf der Nutzung nativer Datenbank-Audit-Tools und -Mechanismen. In diesem Artikel erklären wir, wie Sie DataSunrise und Ihre auf MS Azure gehostete PostgreSQL-Datenbank konfigurieren, um DB Audit Trailing durchzuführen.
Beachten Sie, dass in diesem Handbuch alle erforderlichen Aktionen beschrieben werden, damit das DB Audit Trailing von Anfang an funktioniert. Gehen wir davon aus, dass Sie weder eine Datenbank noch die entsprechenden Azure-Ressourcen haben. Um die Schritte dieses Handbuchs auszuführen, benötigen Sie nur DataSunrise auf Ihrem Computer und Zugang zum Azure-Portal.
Bei Azure Portal anmelden
Melden Sie sich beim Azure-Portal an. Wenn Sie mit der Azure-Oberfläche nicht vertraut sind, kann es hilfreich sein, das Suchfeld oben auf dem Bildschirm zu verwenden (“Ressourcen, Dienste und Dokumente durchsuchen”).
Registrierung einer Azure-Anwendung
DataSunrise wird diese Anwendung verwenden, um die Protokolldateien Ihres PostgreSQL aus dem Blob-Container herunterzuladen, der mit Ihrem Speicherkonto verbunden ist. Führen Sie die folgenden Schritte aus:
1. Navigieren Sie zu App-Registrierungen -> Neue Registrierung und registrieren Sie Ihre Anwendung. Beachten Sie, dass Redirect URI (optional) nicht erforderlich ist.
2. Gewähren Sie Ihrer App die Berechtigungen zum Zugriff auf Blob-Container.
Gehen Sie auf der Seite API-Berechtigungen auf Berechtigung hinzufügen
Wählen Sie im Tab Microsoft-APIs Azure Storage, dann wählen Sie Delegierte Berechtigungen und user_impersonation:
Klicken Sie auf Berechtigungen hinzufügen, um die Änderungen anzuwenden
3. Erstellen Sie ein Geheimnis für Ihre App, damit Azure Ihre App identifizieren kann.
- Navigieren Sie zu Zertifikate und Geheimnisse
- Klicken Sie bei Clientgeheimnisse auf Neues Clientgeheimnis, um ein neues Geheimnis zu erstellen. SPEICHERN SIE DEN GEHEIMWERT IRGENDWO: Sie werden ihn später benötigen.
Erstellung einer Ressourcengruppe
Eine Ressourcengruppe wird benötigt, um Entitäten (Ressourcen) zu enthalten, die mit Ihrer Datenbankumgebung verbunden sind.
Gehen Sie zu Ressourcengruppen und erstellen Sie eine Ressourcengruppe.
Erstellung eines Speicherkontos
Das Speicherkonto wird Ihre PostgreSQL-Protokolldateien enthalten. DataSunrise wird diese Protokolle aus Ihrem Speicherkonto abrufen.
1. Gehen Sie zu Speicherkonten und erstellen Sie ein Konto
2. Wählen Sie Ihre Ressourcengruppe in den Einstellungen des Speicherkontos und benennen Sie das Speicherkonto. Lassen Sie alle anderen Einstellungen standardmäßig
3. Gehen Sie zu Zugriffskontrolle (IAM) und klicken Sie auf Hinzufügen -> Rollen Zuordnung hinzufügen
Wählen Sie Leser: Weiter. Klicken Sie auf +Mitglieder auswählen und wählen Sie Ihre registrierte App. Überprüfen und zuweisen. Dies ist erforderlich, damit Ihre App auf die in den Blob-Containern Ihres Speicherkontos enthaltenen Protokolldateien zugreifen kann:
4. Klicken Sie erneut auf Rollen Zuordnung hinzufügen und wählen Sie Storage Blob Data Reader.
5. Klicken Sie auf +Mitglieder auswählen und wählen Sie Ihre registrierte App. Überprüfen und zuweisen
Erstellung eines PostgreSQL-Datenbankservers
Erstellen Sie einen PostgreSQL-Datenbankserver, falls Sie keinen besitzen. Andernfalls bearbeiten Sie die Einstellungen Ihrer Datenbank gemäß den folgenden Schritten.
1. Gehen Sie zu Azure-Datenbank für PostgreSQL-Server und erstellen Sie einen neuen Server: Gehen Sie zu Erstellen -> Flexibler Server -> Erstellen
2. Geben Sie alle erforderlichen Serverdetails an
3. Überprüfen Sie auf der Registerkarte Netzwerk Öffentlicher Zugriff… und fügen Sie die erforderlichen Firewall-Regeln hinzu. Schließen Sie die Bereitstellung ab.
4. Gehen Sie zu Ihrer PostgreSQL-Datenbank -> Einstellungen -> Serverparameter und legen Sie die folgenden Parameter gemäß der untenstehenden Tabelle fest:
Einstellung | Erforderlicher Wert |
---|---|
log_checkpoints | OFF |
log_destination | CSVLOG |
pgaudit.log | ALL |
shared_preload_libraries | PG_STAT_STATEMENTS, PGAUDIT |
log_line_prefix | %t-%c-u”%u”u- |
Speichern Sie die Einstellungen
5. Konfigurieren Sie Ihre Datenbank, um Protokolle in einem zugehörigen Speicherkonto zu speichern.
Gehen Sie zu Überwachung -> Diagnostikeinstellungen -> Diagnostikeinstellung hinzufügen
Überprüfen Sie sowohl PostgreSQL-Serverprotokoll als auch PostgreSQL-Sitzungsdaten. Überprüfen Sie dann In einem Speicherkonto archivieren und wählen Sie Ihr Speicherkonto aus
Erstellung einer PostgreSQL-Instanz in DataSunrise
Öffnen Sie die Webkonsole von DataSunrise und gehen Sie zu Konfiguration -> Datenbanken, um eine PostgreSQL-Datenbankinstanz zu erstellen (siehe Abschnitt “Erstellen eines Ziel-Datenbankprofils” im DataSunrise-Benutzerhandbuch für Details):
Sie müssen die folgenden Informationen angeben:
1. Wählen Sie Trailing der DB-Audit-Protokolle in den Einstellungen der Instanz. Füllen Sie alle erforderlichen Felder aus.
2. Kopieren Sie ClientID und TenantID von Ihrer Azure-App, damit DataSunrise die App zum Herunterladen Ihrer PostgreSQL-Protokolldateien verwenden kann
3. Geben Sie das zuvor gespeicherte Clientgeheimnis ein (siehe Schritt 3 der Registrierung einer Azure-Anwendung).
4. Geben Sie den Blob-Containernamen ein. Sie können den Namen Ihres Blob-Containers in den Azure-Einstellungen unter Speicherkonten -> Ihr Konto -> Container finden:
Auditergebnisse
Erstellen Sie einige Auditregeln für Ihre PostgreSQL-Datenbank (siehe Abschnitt “Erstellen einer Daten-Auditregel” im Benutzerhandbuch) und führen Sie einige Abfragen auf Ihrer PostgreSQL-Datenbank aus und navigieren Sie zu Audit -> Transaktionstrails für die Auditergebnisse: