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.
Verwenden von Advanced Auditing mit einem Amazon Aurora My SQL DB-Cluster
Sie können die leistungsstarke Advanced Auditing-Funktion in Amazon Aurora My verwendenSQL, um Datenbankaktivitäten zu überprüfen. Dafür müssen Sie die Sammlung der Prüfprotokolle aktivieren, indem Sie mehrere DB-Cluster-Parameter einstellen. Wenn erweitertes Auditing aktiviert ist, können Sie es verwenden, um eine beliebige Kombination von unterstützten Ereignissen zu protokollieren.
Sie können die Prüfprotokolle ansehen oder herunterladen, um die Prüfinformationen für jeweils eine DB-Instance zu überprüfen. Dazu können Sie die Verfahren in Überwachung von Aurora Aurora-Protokolldateien verwenden.
Tipp
Für einen Aurora-DB-Cluster, der mehrere DB-Instances enthält, ist es möglicherweise praktischer, die Prüfprotokolle für alle Instances im Cluster zu untersuchen. Dazu können Sie CloudWatch Logs verwenden. Sie können eine Einstellung auf Cluster-Ebene aktivieren, um die Aurora My SQL Audit-Log-Daten in einer Protokollgruppe in zu veröffentlichen CloudWatch. Anschließend können Sie die Audit-Logs über die CloudWatch Benutzeroberfläche anzeigen, filtern und durchsuchen. Weitere Informationen finden Sie unter Veröffentlichen von Amazon Aurora MySQL-Protokollen in Amazon CloudWatch Logs.
Aktivieren von erweitertem Auditing
Verwenden Sie die in diesem Abschnitt beschriebenen Parameter, um erweitertes Auditing für Ihr DB-Cluster zu aktivieren und zu konfigurieren.
Verwenden Sie den Parameter server_audit_logging
zum Aktivieren oder Deaktivieren von Advanced Auditing.
Mit dem Parameter server_audit_events
können Sie angeben, welche Ereignisse protokolliert werden.
Verwenden Sie die Parameter server_audit_incl_users
und server_audit_excl_users
, um anzugeben, wer überprüft werden soll. Standardmäßig werden alle Benutzer überprüft. Weitere Informationen darüber, wie diese Parameter funktionieren, wenn ein oder beide leer bleiben oder in beiden die gleichen Benutzernamen angegeben sind, finden Sie unter server_audit_incl_users und server_audit_excl_users.
Konfigurieren Sie das erweiterte Auditing, indem Sie diese Parameter in der vom DB-Cluster verwendeten Parametergruppe festlegen. Sie können das unter beschriebene Verfahren verwendenÄndern von Parametern in einer DB-Parametergruppe in Amazon Aurora, um DB-Cluster-Parameter mithilfe der AWS Management Console. Sie können die modify-db-cluster-parameter-Gruppe verwenden AWS CLI Befehl oder die M odifyDBCluster ParameterGroup RDS API Amazon-Operation, um DB-Cluster-Parameter programmgesteuert zu ändern.
Das Ändern dieser Parameter erfordert keinen Neustart des DB-Clusters, wenn die Parametergruppe Ihrem Cluster zugeordnet ist. Wenn Sie die Parametergruppe zum ersten Mal mit dem Cluster verknüpfen, ist ein Neustart des Clusters erforderlich.
server_audit_logging
Aktiviert oder deaktiviert erweitertes Auditing. Dieser Parameter ist standardmäßig voreingestelltOFF; setzen Sie ihn auf ON, um Advanced Auditing zu aktivieren.
In den Protokollen werden keine Prüfungsdaten angezeigt, es sei denn, Sie definieren auch eine oder mehrere Arten von Ereignissen mit dem Parameter server_audit_events
.
Um sich zu vergewissern, dass Prüfungsdaten für eine DB-Instance protokolliert werden, sehen Sie nach, ob einige Protokolldateien für diese Instance Namen nach dem Schema audit/audit.log.
haben. Befolgen Sie zum Anzeigen der Namen der Protokolldateien die Anleitung unter Anzeigen und Auflisten von Datenbank-Protokolldateien. other_identifying_information
server_audit_events
Beinhaltet die durch Kommas getrennte Liste von Ereignissen zum Protokollieren. Ereignisse müssen alle in Großbuchstaben angegeben werden und es sollte kein Leerraum zwischen den Listenelementen bestehen, zum Beispiel: CONNECT,QUERY_DDL
. Dieser Parameter ist standardmäßig auf eine leere Zeichenfolge eingestellt.
Sie können eine beliebige Kombination der folgenden Ereignisse protokollieren:
-
CONNECT— Protokolliert sowohl erfolgreiche als auch fehlgeschlagene Verbindungen und Verbindungsabbrüche. Dieses Ereignis beinhaltet Benutzerinformationen.
-
QUERY— Protokolliert alle Abfragen im Klartext, einschließlich Abfragen, die aufgrund von Syntax- oder Berechtigungsfehlern fehlschlagen.
Tipp
Wenn dieser Ereignistyp aktiviert ist, enthalten die Prüfungsdaten Informationen über die kontinuierliche Überwachung und Zustandsprüfung, die Aurora automatisch durchführt. Wenn Sie nur an bestimmten Arten von Operationen interessiert sind, können Sie spezifischere Arten von Ereignissen verwenden. Sie können die CloudWatch Benutzeroberfläche auch verwenden, um in den Protokollen nach Ereignissen zu suchen, die sich auf bestimmte Datenbanken, Tabellen oder Benutzer beziehen.
-
QUERY_ DCL — Ähnlich dem QUERY Ereignis, gibt jedoch nur Abfragen (GRANTREVOKE, usw.DCL) in Data Control Language () zurück.
-
QUERY_ DDL — Ähnlich dem QUERY Ereignis, gibt jedoch nur Abfragen (CREATE, ALTER usw.DDL) in der Datendefinitionssprache () zurück.
-
QUERY_ DML — Ähnlich dem QUERY Ereignis, gibt jedoch nur Abfragen (INSERTUPDATE, usw. usw.DML) zur Datenmanipulation (SELECT) zurück.
-
TABLE— Protokolliert die Tabellen, die von der Ausführung der Abfrage betroffen waren.
Anmerkung
In Aurora gibt es keinen Filter, der bestimmte Abfragen aus den Audit-Logs ausschließt. Um SELECT
Abfragen auszuschließen, müssen Sie alle DML Aussagen ausschließen.
Wenn ein bestimmter Benutzer diese internen SELECT
Abfragen in den Audit-Logs meldet, können Sie diesen Benutzer ausschließen, indem Sie den DB-Cluster-Parameter server_audit_excl_users festlegen. Wenn dieser Benutzer jedoch auch in anderen Aktivitäten verwendet wird und nicht weggelassen werden kann, gibt es keine andere Möglichkeit, Abfragen auszuschließen. SELECT
server_audit_incl_users
Beinhaltet die durch Kommas getrennte Liste mit Benutzernamen für Benutzer, deren Aktivitäten überprüft werden. Zwischen den Listenelementen sollte kein Leerraum bestehen, zum Beispiel: user_3,user_4
. Dieser Parameter ist standardmäßig auf eine leere Zeichenfolge eingestellt. Die maximale Länge beträgt 1024 Zeichen. Bestimmte Benutzernamen müssen mit entsprechenden Werten in der Spalte User
der mysql.user
-Tabelle übereinstimmen. Weitere Informationen zu Benutzernamen finden Sie unter Kontonutzernamen und Kennwörter
Wenn server_audit_incl_users
und server_audit_excl_users
keine Werte beinhalten (standardmäßige Einstellung), werden alle Benutzer überprüft.
Wenn Sie Benutzer zu server_audit_incl_users
hinzufügen und für server_audit_excl_users
keinen Wert eingeben, werden nur diese Benutzer überprüft.
Wenn Sie Benutzer zu server_audit_excl_users
hinzufügen und für server_audit_incl_users
keinen Wert eingeben, werden alle Benutzer überprüft, die nicht in server_audit_excl_users
aufgeführt sind.
Wenn Sie dieselben Benutzer zu server_audit_excl_users
und server_audit_incl_users
hinzufügen, werden diese Benutzer überprüft. Wenn derselbe Benutzer in beiden Einstellungen aufgeführt ist, erhält server_audit_incl_users
die höhere Priorität.
Verbinden und trennen Sie Ereignisse, die nicht von dieser Variable betroffen sind. Sie werden immer protokolliert, wenn dies festgelegt wurde. Ein Benutzer wird protokolliert, selbst wenn dieser Benutzer auch im Parameter server_audit_excl_users
angegeben ist, da server_audit_incl_users
höhere Priorität hat.
server_audit_excl_users
Beinhaltet die durch Kommas getrennte Liste mit Benutzernamen für Benutzer, deren Aktivitäten nicht überprüft werden. Zwischen den Listenelementen sollte kein Leerraum bestehen, zum Beispiel: rdsadmin,user_1,user_2
. Dieser Parameter ist standardmäßig auf eine leere Zeichenfolge eingestellt. Die maximale Länge beträgt 1024 Zeichen. Bestimmte Benutzernamen müssen mit entsprechenden Werten in der Spalte User
der mysql.user
-Tabelle übereinstimmen. Weitere Informationen zu Benutzernamen finden Sie unter Kontonutzernamen und Passwörter
Wenn server_audit_incl_users
und server_audit_excl_users
keine Werte beinhalten (standardmäßige Einstellung), werden alle Benutzer überprüft.
Wenn Sie Benutzer zu server_audit_excl_users
hinzufügen und server_audit_incl_users
leer lassen, werden nur die unter server_audit_excl_users
aufgeführten Benutzer nicht überprüft. Alle anderen werden jedoch überprüft.
Wenn Sie dieselben Benutzer zu server_audit_excl_users
und server_audit_incl_users
hinzufügen, werden diese Benutzer überprüft. Wenn derselbe Benutzer in beiden Einstellungen aufgeführt ist, erhält server_audit_incl_users
die höhere Priorität.
Verbinden und trennen Sie Ereignisse, die nicht von dieser Variable betroffen sind. Sie werden immer protokolliert, wenn dies festgelegt wurde. Ein Benutzer wird protokolliert, wenn dieser Benutzer auch im Parameter server_audit_incl_users
festgelegt ist, da diese Einstellung eine höhere Priorität hat als server_audit_excl_users
.
Anzeigen von Audit-Protokollen
Sie können Audit-Protokolle mithilfe der Konsole anzeigen und herunterladen. Wählen Sie auf der Seite Datenbanken die DB-Instance aus, um ihre Details anzuzeigen, und scrollen Sie dann in den Abschnitt Protokolle. Die von der Advanced-Auditing-Funktion erstellten Prüfprotokolle haben Namen nach dem Schema audit/audit.log.
. other_identifying_information
Um eine Protokolldatei herunterzuladen, wählen Sie die Datei im Bereich Protokolle aus. Wählen Sie dann Herunterladen.
Sie können auch eine Liste der Protokolldateien abrufen, indem Sie describe-db-log-files AWS CLI Befehl. Sie können den Inhalt einer Protokolldatei herunterladen, indem Sie den download-db-log-file-Teil verwenden AWS CLI Befehl. Weitere Informationen erhalten Sie unter Anzeigen und Auflisten von Datenbank-Protokolldateien und Herunterladen einer Datenbank-Protokolldatei.
Details in Prüfprotokollen
Protokolldateien werden als kommagetrennte Variablendateien (CSV) im Format UTF -8 dargestellt. Abfragen werden auch in einfache Anführungszeichen (') gesetzt.
Das Audit-Log wird separat im lokalen Speicher jeder Aurora My SQL DB-Instance gespeichert. Jede Instance verteilt Schreibvorgänge auf vier Protokolldateien gleichzeitig. Die maximale Größe einer Protokolldatei beträgt 100 MB. Wenn dieses nicht konfigurierbare Limit erreicht ist, rotiert Aurora die Datei und generiert eine neue Datei.
Tipp
Protokolldateieinträge folgen keiner sequenziellen Reihenfolge. Um die Einträge zu sortieren, verwenden Sie den Wert des Zeitstempels. Sie müssen eventuell alle Protokolldateien überprüfen, um die aktuellen Ereignisse zu sehen. Um mehr Flexibilität beim Sortieren und Durchsuchen der Protokolldaten zu erhalten, aktivieren Sie die Einstellung, um die Auditprotokolle hochzuladen CloudWatch und sie über die CloudWatch Benutzeroberfläche anzuzeigen.
Um Auditdaten mit mehr Feldtypen und mit JSON formatierter Ausgabe anzuzeigen, können Sie auch die Funktion Database Activity Streams verwenden. Weitere Informationen finden Sie unter Überwachung von Amazon Aurora mit Datenbank-Aktivitätsstreams.
Die Prüfprotokolldateien beinhalten die folgenden durch Kommata getrennten Informationen in Zeilen in der festgelegten Reihenfolge:
Feld | Beschreibung |
---|---|
timestamp |
Der präzise Unix-Zeitstempel für das protokollierte Ereignis mit Mikrosekunden. |
serverhost |
Der Name der Instance, für die das Ereignis protokolliert wird. |
username |
Der verbundene Benutzername des Benutzers. |
host |
Der Host, von dem sich der Benutzer verbunden hat. |
connectionid |
Die Nummer der Verbindungs-ID für den protokollierte Vorgang. |
queryid |
Die Nummer der Abfragen-ID, die verwendet werden kann, um Ereignisse für relationale Tabellenereignisse und zugehörige Abfragen zu finden. Für |
operation |
Der dokumentierte Aktionstyp. Mögliche Werte sind: |
Datenbank |
Die aktive Datenbank, wie vom |
Objekt |
Bei |
retcode |
Der zurückgegebene Code des protokollierten Vorgangs. |