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.
Überprüfen von Datenbankobjekten
Wenn pgAudit auf Ihrem DB-Cluster von Aurora PostgreSQL eingerichtet und für Ihre Anforderungen konfiguriert ist, werden detailliertere Informationen im PostgreSQL-Protokoll erfasst. Während die PostgreSQL-Standardprotokollierungskonfiguration beispielsweise das Datum und die Uhrzeit angibt, zu der eine Änderung in einer Datenbanktabelle vorgenommen wurde, kann der Protokolleintrag mit der pgAudit-Erweiterung das Schema, den Benutzer, der die Änderung vorgenommen hat, und andere Details enthalten, je nachdem, wie die Erweiterungsparameter konfiguriert sind. Sie können das Auditing einrichten, um Änderungen wie folgt zu verfolgen.
Für jede Sitzung, nach Benutzer. Auf der Sitzungsebene können Sie den vollständig qualifizierten Befehlstext erfassen.
Für jedes Objekt, nach Benutzer und nach Datenbank.
Die Objektüberwachungsfunktion wird aktiviert, wenn Sie die rds_pgaudit-Rolle in Ihrem System erstellen und diese Rolle dann dem pgaudit.role-Parameter in Ihrer benutzerdefinierten Parametergruppe hinzufügen. Standardmäßig ist der pgaudit.role-Parameter nicht festgelegt und der einzig zulässige Wert ist rds_pgaudit. Bei den folgenden Schritten wird davon ausgegangen, dass pgaudit initialisiert wurde und Sie die pgaudit-Erweiterung gemäß den Schritten unter Einrichten der pgAudit-Erweiterung erstellt haben.
Wie in diesem Beispiel gezeigt, enthält die Zeile „LOG: AUDIT: SESSION“ unter anderem Informationen über die Tabelle und deren Schema.
So richten Sie die Objektüberwachung ein
Stellen Sie über
psqleine Verbindung mit der Writer-Instance Ihres DB-Clusters von Aurora PostgreSQL her.psql --host=your-instance-name.aws-region.rds.amazonaws.com --port=5432 --username=postgrespostgres --password --dbname=labdb-
Erstellen Sie mithilfe des folgenden Befehls eine Datenbankrolle mit dem Namen
rds_pgaudit.labdb=>CREATE ROLE rds_pgaudit;CREATE ROLElabdb=> Schließen Sie die
psql-Sitzung.labdb=>\qVerwenden Sie in den nächsten Schritten die AWS CLI, um die Audit-Protokollparameter in Ihrer benutzerdefinierten Parametergruppe zu ändern.
-
Verwenden Sie den folgenden AWS CLI-Befehl, um den
pgaudit.role-Parameter aufrds_pgauditfestzulegen. Standardmäßig ist dieser Parameter leer und der einzig zulässige Wert istrds_pgaudit.aws rds modify-db-parameter-group \ --db-parameter-group-namecustom-param-group-name\ --parameters "ParameterName=pgaudit.role,ParameterValue=rds_pgaudit,ApplyMethod=pending-reboot" \ --regionaws-region -
Starten Sie die Writer-Instance Ihres DB-Clusters von Aurora PostgreSQL mit dem folgenden AWS CLI-Befehl neu, damit Ihre Änderungen der Parameter wirksam werden.
aws rds reboot-db-instance \ --db-instance-identifierwriter-instance\ --regionaws-region Führen Sie den folgenden Befehl aus, um zu bestätigen, dass
pgaudit.roleaufrds_pgauditfestgelegt ist.SHOW pgaudit.role;pgaudit.role ------------------ rds_pgaudit
Um die pgAudit-Protokollierung zu testen, können Sie mehrere Beispielbefehle ausführen, die Sie überprüfen möchten. Sie könnten beispielsweise die folgenden Befehle ausführen.
CREATE TABLE t1 (id int); GRANT SELECT ON t1 TO rds_pgaudit; SELECT * FROM t1;id ---- (0 rows)
Die Datenbankprotokolle sollten dann einen Eintrag ähnlich dem folgenden enthalten.
...
2017-06-12 19:09:49 UTC:...:rds_test@postgres:[11701]:LOG: AUDIT:
OBJECT,1,1,READ,SELECT,TABLE,public.t1,select * from t1;
...Weitere Informationen zur Anzeige der Protokolle finden Sie unter Überwachen von Amazon Aurora-Protokolldateien.
Weitere Informationen zur pgAudit-Erweiterung finden Sie unter pgAudit