Einrichtung der pgAudit Erweiterung - Amazon Relational Database Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Einrichtung der pgAudit Erweiterung

Um die pgAudit Erweiterung auf Ihrem einzurichten, fügen Sie sie zunächst pgAudit zu den gemeinsam genutzten Bibliotheken in der benutzerdefinierten DB-Parametergruppe für Ihre RDS for Postgre-DB-Instance hinzu. SQL Weitere Informationen über das Erstellen einer benutzerdefinierten DB-Parametergruppe finden Sie unter Parametergruppen für Amazon RDS. Als Nächstes installieren Sie die pgAudit Erweiterung. Abschließend geben Sie die Datenbanken und Objekte an, die Sie überprüfen möchten. Die Schritte in diesem Abschnitt veranschaulichen die Vorgehensweise. Sie können das AWS Management Console oder die AWS CLI.

Sie müssen über Berechtigungen als rds_superuser-Rolle verfügen, um alle diese Aufgaben ausführen zu können.

Bei den folgenden Schritten wird davon ausgegangen, dass Ihr für die SQL Postgre-DB-Instance einer benutzerdefinierten zugeordnet ist.

Um die Erweiterung einzurichten pgAudit
  1. Melden Sie sich an bei AWS Management Console und öffnen Sie die RDS Amazon-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich die aus.

  3. Öffnen Sie die Registerkarte Konfiguration für Ihre . RDSfür die SQL Postgre-DB-Instance. Suchen Sie in den Instance-Details den Link Parameter group (Parametergruppe).

  4. Wählen Sie den Link, um die benutzerdefinierten Parameter zu öffnen, die mit Ihrem verknüpft sind. RDSfür die SQL Postgre-DB-Instance.

  5. Geben Sie in das Suchfeld Parameters (Parameter) shared_pre ein, um den shared_preload_libraries-Parameter zu finden.

  6. Wählen Sie Edit parameters (Parameter bearbeiten) aus, um auf die Eigenschaftswerte zuzugreifen.

  7. Fügen Sie pgaudit der Liste im Feld Values (Werte) hinzu. Verwenden Sie ein Komma, um Elemente in der Werteliste zu trennen.

    Bild des shared_preload_libaries Parameters pgAudit wurde hinzugefügt.
  8. Starten Sie die für die SQL Postgre-DB-Instance neu, damit Ihre Änderung des shared_preload_libraries Parameters wirksam wird.

  9. Wenn die Instance verfügbar ist, überprüfen Sie, ob sie pgAudit initialisiert wurde. Verwenden Siepsql, um eine Verbindung zur für SQL Postgre-DB-Instance herzustellen, und führen Sie dann den folgenden Befehl aus.

    SHOW shared_preload_libraries; shared_preload_libraries -------------------------- rdsutils,pgaudit (1 row)
  10. Wenn Sie pgAudit initialisiert sind, können Sie die Erweiterung jetzt erstellen. Sie müssen die Erweiterung nach der Initialisierung der Bibliothek erstellen, da die pgaudit Erweiterung Ereignisauslöser für die Prüfung von Anweisungen in der Datendefinitionssprache (DDL) installiert.

    CREATE EXTENSION pgaudit;
  11. Schließen Sie die psql-Sitzung.

    labdb=> \q
  12. Melden Sie sich an bei AWS Management Console und öffnen Sie die RDS Amazon-Konsole unter https://console.aws.amazon.com/rds/.

  13. Suchen Sie den pgaudit.log-Parameter in der Liste und legen Sie den entsprechenden Wert für Ihren Anwendungsfall fest. Wenn Sie beispielsweise den pgaudit.log-Parameter auf write festlegen, wie in der folgenden Abbildung gezeigt, werden Einfügungen, Aktualisierungen, Löschungen und einige andere Typänderungen im Protokoll erfasst.

    Bild des pgaudit.log-Parameters mit Einstellung.

    Sie können auch einen der folgenden Werte für den pgaudit.log-Parameter auswählen.

    • „none“: Dies ist der Standardwert. Es werden keine Datenbankänderungen protokolliert.

    • „all“: Es wird alles protokolliert (Lesen, Schreiben, Funktion, Rolle, DDL, Verschiedenes).

    • ddl — Protokolliert alle Anweisungen in der Datendefinitionssprache (DDL), die nicht in der ROLE Klasse enthalten sind.

    • „function“: Protokolliert Funktionsaufrufe und DO-Blöcke.

    • „misc“: Protokolliert verschiedene Befehle wie DISCARD, FETCH, CHECKPOINT, VACUUM und SET.

    • „read“: Protokolliert SELECT und COPY, wenn die Quelle eine Beziehung (z. B. eine Tabelle) oder eine Abfrage ist.

    • „role“: Protokolliert Anweisungen in Bezug auf Rollen und Berechtigungen wie GRANT, REVOKE, CREATE ROLE, ALTER ROLE und DROP ROLE.

    • „write“: Protokolliert INSERT, UPDATE, DELETE, TRUNCATE und COPY, wenn das Ziel eine Beziehung (Tabelle) ist.

  14. Wählen Sie Änderungen speichern.

  15. Öffnen Sie die RDS Amazon-Konsole unter https://console.aws.amazon.com/rds/.

  16. Wählen Sie die für die SQL Postgre-DB-Instance aus der Datenbankliste aus.

Zur Einrichtung pgAudit

Zur Einrichtung pgAudit mit dem AWS CLI, rufen Sie den modify-db-parameter-groupVorgang auf, um die Audit-Log-Parameter in Ihrer benutzerdefinierten Parametergruppe zu ändern, wie im folgenden Verfahren gezeigt.

  1. Verwenden Sie Folgendes AWS CLI Befehl zum Hinzufügen pgaudit zum shared_preload_libraries Parameter.

    aws rds modify-db-parameter-group \ --db-parameter-group-name custom-param-group-name \ --parameters "ParameterName=shared_preload_libraries,ParameterValue=pgaudit,ApplyMethod=pending-reboot" \ --region aws-region
  2. Verwenden Sie Folgendes AWS CLI Befehl, um die für die SQL Postgre-DB-Instance neu zu starten, sodass die Pgaudit-Bibliothek initialisiert wird.

    aws rds reboot-db-instance \ --db-instance-identifier your-instance \ --region aws-region
  3. Wenn die Instance verfügbar ist, können Sie überprüfen, ob pgaudit initialisiert wurde. Verwenden Siepsql, um eine Verbindung zur für SQL Postgre-DB-Instance herzustellen, und führen Sie dann den folgenden Befehl aus.

    SHOW shared_preload_libraries; shared_preload_libraries -------------------------- rdsutils,pgaudit (1 row)

    Wenn Sie pgAudit initialisiert sind, können Sie die Erweiterung jetzt erstellen.

    CREATE EXTENSION pgaudit;
  4. Schließen Sie die psql Sitzung, damit Sie die verwenden können AWS CLI.

    labdb=> \q
  5. Verwenden Sie Folgendes AWS CLI Befehl, um die Klassen von Anweisungen anzugeben, die von der Sitzungsüberwachungsprotokollierung protokolliert werden sollen. Im Beispiel wird der pgaudit.log-Parameter auf write festgelegt, wodurch Einfügungen, Aktualisierungen und Löschungen im Protokoll erfasst werden.

    aws rds modify-db-parameter-group \ --db-parameter-group-name custom-param-group-name \ --parameters "ParameterName=pgaudit.log,ParameterValue=write,ApplyMethod=pending-reboot" \ --region aws-region

    Sie können auch einen der folgenden Werte für den pgaudit.log-Parameter auswählen.

    • „none“: Dies ist der Standardwert. Es werden keine Datenbankänderungen protokolliert.

    • „all“: Es wird alles protokolliert (Lesen, Schreiben, Funktion, Rolle, DDL, Verschiedenes).

    • ddl — Protokolliert alle Anweisungen der Datendefinitionssprache (DDL), die nicht in der ROLE Klasse enthalten sind.

    • „function“: Protokolliert Funktionsaufrufe und DO-Blöcke.

    • „misc“: Protokolliert verschiedene Befehle wie DISCARD, FETCH, CHECKPOINT, VACUUM und SET.

    • „read“: Protokolliert SELECT und COPY, wenn die Quelle eine Beziehung (z. B. eine Tabelle) oder eine Abfrage ist.

    • „role“: Protokolliert Anweisungen in Bezug auf Rollen und Berechtigungen wie GRANT, REVOKE, CREATE ROLE, ALTER ROLE und DROP ROLE.

    • „write“: Protokolliert INSERT, UPDATE, DELETE, TRUNCATE und COPY, wenn das Ziel eine Beziehung (Tabelle) ist.

    Starten Sie die für die SQL Postgre-DB-Instance wie folgt neu: AWS CLI Befehl.

    aws rds reboot-db-instance \ --db-instance-identifier your-instance \ --region aws-region