databaseActivityEventJSONArray di elenchi per i flussi di attività del database - Amazon Aurora

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

databaseActivityEventJSONArray di elenchi per i flussi di attività del database

Il payload del registro di controllo è un array crittografato databaseActivityEventListJSON. Le tabelle riportano in ordine alfabetico i campi per ogni evento di attività nella matrice DatabaseActivityEventList decrittata di un log di verifica. I campi variano a seconda che si utilizzi Aurora Postgre SQL o Aurora My. SQL Consultare la tabella che si applica al modulo di gestione di database.

Importante

Tale struttura di eventi è soggetta a modifiche. Aurora potrebbe aggiungere nuovi campi agli eventi di attività in futuro. Nelle applicazioni che analizzano i JSON dati, assicurati che il codice possa ignorare o intraprendere le azioni appropriate per i nomi di campo sconosciuti.

databaseActivityEventElenca i campi per Aurora Postgre SQL

Di seguito sono riportati databaseActivityEventList i campi per Aurora Postgre. SQL

Campo Tipo di dati Descrizione
class stringa

La classe dell'evento attività. I valori validi per Aurora Postgre SQL sono i seguenti:

  • ALL

  • CONNECT – Un evento di connessione o disconnessione.

  • DDL— Un'DDListruzione che non è inclusa nell'elenco delle istruzioni per la classe. ROLE

  • FUNCTION – Una chiamata di funzione o un blocco DO.

  • MISC – Un comando vario quale DISCARD, FETCH, CHECKPOINT o VACUUM.

  • NONE

  • READ – Un'istruzione SELECT o COPY quando l'origine è una relazione o una query.

  • ROLE – Un'istruzione correlata ai ruoli e privilegi inclusi GRANT, REVOKE e CREATE/ALTER/DROP ROLE.

  • WRITE – Un'istruzione INSERT, UPDATE, DELETE, TRUNCATE o COPY quando la destinazione è una relazione.

clientApplication stringa L'applicazione utilizzata dal client per eseguire la connessione come segnalato dal client. Il client non deve fornire queste informazioni, pertanto il valore può essere nullo.
command string Il nome del SQL comando senza dettagli sul comando.
commandText string

L'SQListruzione effettiva trasmessa dall'utente. Per Aurora PostgreSQL, il valore è identico all'istruzione originale. SQL Questo campo viene utilizzato per tutti i tipi di record tranne che i record di connessione e disconnessione, nel quale caso il valore è nullo.

Importante

Il SQL testo completo di ogni dichiarazione è visibile nel registro di controllo del flusso di attività, inclusi tutti i dati sensibili. Tuttavia, le password degli utenti del database vengono oscurate se Aurora è in grado di determinarle dal contesto, come nell'istruzione seguente. SQL

ALTER ROLE role-name WITH password
databaseName string Il database a cui è connesso l'utente.
dbProtocol stringa Il protocollo del database, ad esempio Postgres 3.0.
dbUserName stringa L'utente del database con cui il client è autenticato.
errorMessage

(solo record di attività del database versione 1.1)

stringa

Se si verifica una errore qualsiasi, questo campo viene compilato con il messaggio di errore che verrebbe generato dal server di database. Il valore errorMessage è nullo per le istruzioni normali che non hanno generato un errore.

Un errore è definito come qualsiasi attività che potrebbe produrre un evento del registro degli SQL errori di Postgre visibile al client con un livello di gravità pari o superiore. ERROR Per ulteriori informazioni, consulta SQLPostgre Message Severity Levels. Ad esempio, errori di sintassi e annullamenti delle query generano un messaggio di errore.

Gli errori interni SQL del server Postgre, come gli errori di processo del checkpointer in background, non generano un messaggio di errore. Tuttavia, i record per tali eventi vengono comunque generati a prescindere dall'impostazione del livello di gravità del registro. Ciò impedisce agli aggressori di disattivare la registrazione per tentare di evitare il rilevamento.

Vedere anche il campo exitCode.

exitCode int Un valore usato per un record di chiusura sessione. In una clean exit, contiene il codice di chiusura. Un codice di chiusura può sempre essere ottenuto in alcuni scenari di errore. Ad esempio se Postgre SQL esegue un comando exit() o se un operatore esegue un comando come. kill -9

Se c'è stato qualche errore, il exitCode campo mostra il codice di SQL erroreSQLSTATE, come elencato in SQLPostgre Error Codes.

Vedere anche il campo errorMessage.

logTime stringa Una timestamp come registrato nel percorso del codice di controllo. Rappresenta l'ora di fine dell'esecuzione dell'SQListruzione. Vedere anche il campo startTime.
netProtocol stringa Il protocollo di comunicazione di rete.
objectName string Il nome dell'oggetto del database se l'SQListruzione opera su uno di essi. Questo campo viene utilizzato solo quando l'SQListruzione opera su un oggetto di database. Se l'SQListruzione non funziona su un oggetto, questo valore è nullo.
objectType string Il tipo di oggetto di database, ad esempio tabella, indice, vista e così via. Questo campo viene utilizzato solo quando l'SQListruzione opera su un oggetto di database. Se l'SQListruzione non funziona su un oggetto, questo valore è nullo. I valori validi includono i seguenti:
  • COMPOSITE TYPE

  • FOREIGN TABLE

  • FUNCTION

  • INDEX

  • MATERIALIZED VIEW

  • SEQUENCE

  • TABLE

  • TOAST TABLE

  • VIEW

  • UNKNOWN

paramList string Una matrice di parametri separati da virgole passati all'istruzione. SQL Se l'SQListruzione non ha parametri, questo valore è una matrice vuota.
pid int L'ID di processo del processo back-end allocato per servire la connessione client.
remoteHost stringa L'indirizzo IP del client o il nome host. Per Aurora PostgreSQL, quale viene utilizzato dipende dall'impostazione dei parametri del database. log_hostname Il remoteHost valore include anche [local] e localhost che indicano l'attività dell'utente. rdsadmin
remotePort string Il numero di porta del client.
rowCount int Il numero di righe restituite dall'SQListruzione. Ad esempio, se un'SELECTistruzione restituisce 10 righe, rowCount è 10. Per INSERT le UPDATE nostre dichiarazioni, rowCount è 0.
serverHost string L'indirizzo IP host del server di database. Il serverHost valore include anche [local] e localhost che indicano l'attività dell'rdsadminutente.
serverType string Il tipo di server di database, ad esempio PostgreSQL.
serverVersion string La versione del server di database, ad esempio 2.3.1 per Aurora Postgre. SQL
serviceName string Il nome del servizio, ad esempi Amazon Aurora PostgreSQL-Compatible edition.
sessionId int Un identificatore di sessione pseudo-univoco.
sessionId int Un identificatore di sessione pseudo-univoco.
startTime

(solo record di attività del database versione 1.1)

string

L'ora in cui è iniziata l'esecuzione dell'istruzione. SQL

Per calcolare il tempo approssimativo di esecuzione dell'SQListruzione, utilizzarelogTime - startTime. Vedere anche il campo logTime.

statementId int Un identificatore per la dichiarazione del cliente. SQL Il contatore si trova a livello di sessione e aumenta con ogni SQL dichiarazione inserita dal client.
substatementId int Un identificatore per una SQL sottodichiarazione. Questo valore conta le sottoistruzioni contenute per ogni SQL istruzione identificata dal campo. statementId
type string Il tipo di evento, I valori validi sono record e heartbeat.

databaseActivityEventElenca i campi per Aurora My SQL

Di seguito sono riportati databaseActivityEventList i campi per Aurora My. SQL

Campo Tipo di dati Descrizione
class stringa

La classe dell'evento attività.

I valori validi per Aurora My SQL sono i seguenti:

  • MAIN— L'evento principale che rappresenta una SQL dichiarazione.

  • AUX – Un evento supplementare contenente ulteriori dettagli. Ad esempio, un'istruzione che rinomina un oggetto potrebbe avere un evento con classe AUX che riflette il nuovo nome.

    Per trovare gli eventi corrispondenti MAIN e AUX alla stessa istruzione, verificare la presenza di eventi diversi con gli stessi valori per il campo pid e per il campo statementId.

clientApplication stringa L'applicazione utilizzata dal client per eseguire la connessione come segnalato dal client. Il client non deve fornire queste informazioni, pertanto il valore può essere nullo.
command string

La categoria generale della SQL dichiarazione. I valori di questo campo dipendono dal valore di class.

I valori quando class è MAIN includono quanto segue:

  • CONNECT – Quando una sessione client è connessa.

  • QUERY— Una SQL dichiarazione. Accompagnato da uno o più eventi con un valore di class pari a AUX.

  • DISCONNECT – Quando una sessione client viene disconnessa.

  • FAILED_CONNECT – Quando un client tenta di connettersi ma non è in grado di farlo.

  • CHANGEUSER— Un cambiamento di stato che fa parte del protocollo My SQL network, non derivante da una dichiarazione rilasciata da te.

I valori quando class è AUX includono quanto segue:

  • READ – Un'istruzione SELECT o COPY quando l'origine è una relazione o una query.

  • WRITE – Un'istruzione INSERT, UPDATE, DELETE, TRUNCATE o COPY quando la destinazione è una relazione.

  • DROP – Eliminazione di un oggetto

  • CREATE – Creazione di un oggetto.

  • RENAME – Ridenominazione di un oggetto

  • ALTER – Per cambiare le proprietà di un oggetto

commandText string

Per gli eventi con un class valore diMAIN, questo campo rappresenta l'effettiva SQL dichiarazione trasmessa dall'utente. Questo campo viene utilizzato per tutti i tipi di record tranne che i record di connessione e disconnessione, nel quale caso il valore è nullo.

Per gli eventi con un valore class pari a AUX, questo campo contiene informazioni supplementari sugli oggetti coinvolti nell'evento.

Per Aurora MySQL, caratteri come le virgolette sono preceduti da una barra rovesciata, che rappresenta un carattere di escape.

Importante

Il SQL testo completo di ogni dichiarazione è visibile nel registro di controllo, inclusi tutti i dati sensibili. Tuttavia, le password degli utenti del database vengono oscurate se Aurora è in grado di determinarle dal contesto, come nell'istruzione seguente. SQL

mysql> SET PASSWORD = 'my-password';
Nota

Specifica una password diversa dal prompt mostrato qui come best practice per la sicurezza.

databaseName string Il database a cui è connesso l'utente.
dbProtocol stringa Il protocollo di database. Attualmente, questo valore è sempre valido MySQL per Aurora My. SQL
dbUserName string L'utente del database con cui il client è autenticato.
endTime

(solo record di attività del database versione 1.2)

string

L'ora in cui è terminata l'esecuzione dell'SQListruzione. È rappresentato nel formato Coordinated Universal Time (UTC).

Per calcolare il tempo di esecuzione dell'SQListruzione, utilizzareendTime - startTime. Vedere anche il campo startTime.

errorMessage

(solo record di attività del database versione 1.1)

stringa

Se si verifica una errore qualsiasi, questo campo viene compilato con il messaggio di errore che verrebbe generato dal server di database. Il valore errorMessage è nullo per le istruzioni normali che non hanno generato un errore.

Per errore si intende qualsiasi attività che produca un evento My SQL error log visibile al client con un livello di gravità uguale ERROR o superiore. Per ulteriori informazioni, consulta The Error Log nel My SQL Reference Manual. Ad esempio, errori di sintassi e annullamenti delle query generano un messaggio di errore.

Gli errori interni di My SQL server, come gli errori di processo del checkpointer in background, non generano alcun messaggio di errore. Tuttavia, i record per tali eventi vengono comunque generati a prescindere dall'impostazione del livello di gravità del registro. Ciò impedisce agli aggressori di disattivare la registrazione per tentare di evitare il rilevamento.

Vedere anche il campo exitCode.

exitCode int Un valore usato per un record di chiusura sessione. In una clean exit, contiene il codice di chiusura. Un codice di chiusura può sempre essere ottenuto in alcuni scenari di errore. In questi casi, questo valore potrebbe essere zero o potrebbe essere vuoto.
logTime stringa Una timestamp come registrato nel percorso del codice di controllo. È rappresentato nel formato Coordinated Universal Time (UTC). Per il modo più accurato per calcolare la durata dell'istruzione, vedere i campi startTime e endTime.
netProtocol stringa Il protocollo di comunicazione di rete. Attualmente, questo valore è sempre valido TCP per Aurora My. SQL
objectName string Il nome dell'oggetto del database se l'SQListruzione opera su uno di essi. Questo campo viene utilizzato solo quando l'SQListruzione opera su un oggetto di database. Se l'SQListruzione non funziona su un oggetto, questo valore è vuoto. Per costruire il nome completo dell'oggetto, combinare databaseName e objectName. Se la query coinvolge più oggetti, questo campo può essere un elenco di nomi separati da virgole.
objectType stringa

Il tipo di oggetto di database, ad esempio tabella, indice e così via. Questo campo viene utilizzato solo quando l'SQListruzione opera su un oggetto di database. Se l'SQListruzione non funziona su un oggetto, questo valore è nullo.

I valori validi per Aurora My SQL includono:

  • INDEX

  • TABLE

  • UNKNOWN

paramList string Questo campo non viene utilizzato per Aurora My SQL ed è sempre nullo.
pid int L'ID di processo del processo back-end allocato per servire la connessione client. Quando il server di database viene riavviato, le modifiche pid e il contatore per il campo statementId ricomincia.
remoteHost string L'indirizzo IP o il nome host del client che ha emesso la dichiarazione. SQL Per Aurora MySQL, quale viene utilizzato dipende dall'impostazione dei skip_name_resolve parametri del database. Il valore localhost indica l'attività dell'utente rdsadmin speciale.
remotePort stringa Il numero di porta del client.
rowCount int Il numero di righe della tabella interessate o recuperate dall'SQListruzione. Questo campo viene utilizzato solo per SQL le istruzioni che sono istruzioni Data Manipulation Language (DML). Se l'SQListruzione non è un'DMListruzione, questo valore è nullo.
serverHost string Identificatore dell'istanza del server di database.
serverType string Il tipo di server di database, ad esempio MySQL.
serverVersion stringa La versione del server di database. Attualmente, questo valore è sempre valido MySQL 5.7.12 per Aurora My. SQL
serviceName string Il nome del servizio . Attualmente, questo valore è sempre valido Amazon Aurora MySQL per Aurora My. SQL
sessionId int Un identificatore di sessione pseudo-univoco.
startTime

(solo record di attività del database versione 1.1)

string

L'ora in cui è iniziata l'esecuzione dell'SQListruzione. È rappresentata nel formato Coordinated Universal Time (UTC).

Per calcolare il tempo di esecuzione dell'SQListruzione, utilizzareendTime - startTime. Vedere anche il campo endTime.

statementId int Un identificatore per la SQL dichiarazione del cliente. Il contatore aumenta con ogni SQL dichiarazione inserita dal cliente. Il contatore viene reimpostato quando viene riavviata l'istanza database.
substatementId int Un identificatore per una SQL sottodichiarazione. Questo valore è 1 per gli eventi con classe MAIN e 2 per gli eventi con classe AUX. Utilizzare il campo statementId per identificare tutti gli eventi generati dalla stessa istruzione.
transactionId

(solo record di attività del database versione 1.2)

int Identificatore di una transazione.
type stringa Il tipo di evento, I valori validi sono record e heartbeat.