本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
databaseActivityEventJSON列出數據庫活動流的數組
稽核記錄裝載是加密的databaseActivityEventList
JSON陣列。以下資料表列出稽核記錄中已解密 DatabaseActivityEventList
陣列中,每個活動事件的欄位 (按英文字母順序列出)。根據您使用的是「Aurora 波斯特」還是「我的 SQL Aurora」,欄SQL位會有所不同。請參閱適用於資料庫引擎的表格。
重要
事件結構可能會改變。Aurora future RDS 可能會在活動事件中新增欄位。在剖析JSON資料的應用程式中,請確定您的程式碼可以忽略或對未知欄位名稱採取適當的動作。
databaseActivityEventAurora 波斯特的列表字段 SQL
以下是 Aurora 波斯特雷SQL的databaseActivityEventList
字段。
欄位 | 資料類型 | 描述 |
---|---|---|
class |
string |
活動事件的類別。Aurora 波斯特的SQL有效值如下:
|
clientApplication |
string | 用戶端報告用來連接的應用程式。用戶端不需提供此資訊,因此此值可以是 Null。 |
command |
string | 沒有任何SQL命令詳細信息的命令的名稱。 |
commandText |
string |
使用者傳入的實際SQL陳述式。對於 Aurora · 波斯特格雷SQL,其值與原始SQL語句相同。此欄位可用於連接或中斷連接記錄以外的所有記錄類型,在前述兩種例外類型中值為 Null。 重要每個陳述式的全SQL文都會顯示在活動串流稽核記錄中,包括任何敏感資料。不過,如果 Aurora 可以從內容判斷資料庫使用者密碼,例如下列SQL陳述式,就會密碼。
|
databaseName |
string | 使用者連接的資料庫。 |
dbProtocol |
string | 資料庫通訊協定,例如 Postgres 3.0 。 |
dbUserName |
string | 用戶端驗證所用的資料庫使用者。 |
errorMessage (僅限 1.1 版資料庫活動記錄) |
string |
如果有任何錯誤,該欄位會填入由資料庫伺服器產生的錯誤訊息。對於未導致錯誤的正常陳述式,此 錯誤定義為任何會產生嚴重性等級 內部 Postgre SQL 伺服器錯誤 (例如背景檢查指標處理程序錯誤) 不會產生錯誤訊息。不過,無論日誌嚴重性層級的設定為何,仍會發出這類事件的記錄。這可以防止攻擊者關閉記錄日誌以嘗試避免偵測。 另請參閱 |
exitCode |
int | 工作階段結束記錄所用的值。清除結束時,此會包含結束代碼。在某些失敗狀況下可能無法隨時取得結束代碼。範例是 Postgre 是SQL否執行exit() 或運算子執行如下指令。kill -9 如果有任何錯誤, 另請參閱 |
logTime |
string | 在稽核程式碼路徑中記錄的時間戳記。這表示SQL語句執行結束時間。另請參閱 startTime 欄位。 |
netProtocol |
string | 網路通訊協定。 |
objectName |
string | 資料庫物件的名稱 (如果SQL陳述式是在其中一個上運作)。只有在SQL陳述式在資料庫物件上運作時才會使用此欄位。如果SQL陳述式不是在物件上運作,則此值為 null。 |
objectType |
string | 資料表、索引、檢視等之類的資料庫物件類型。只有在SQL陳述式在資料庫物件上運作時才會使用此欄位。如果SQL陳述式不是在物件上運作,則此值為 null。有效值包括以下項目:
|
paramList |
string | 傳遞給SQL陳述式的逗號分隔參數陣列。如果SQL陳述式沒有參數,這個值就是空陣列。 |
pid |
int | 後端程序的程序 ID,此程序的配置是用來提供用戶端連線。 |
remoteHost |
string | 用戶端 IP 地址或主機名稱。對於 Aurora PostgreSQL,使用哪一個取決於數據庫的log_hostname 參數設置。該remoteHost 值還包括[local] 和表localhost 示來自rdsadmin 用戶的活動。 |
remotePort |
string | 用戶端連接埠號碼。 |
rowCount |
int | SQL陳述式傳回的資料列數目。例如,如果SELECT語句返回 10 行,則 rowCount 為 10。對於INSERT或UPDATE語句, rowCount 是 0。 |
serverHost |
string | 資料庫伺服器主機 IP 地址。該serverHost 值還包括[local] 和表localhost 示來自rdsadmin 用戶的活動。 |
serverType |
string | 資料庫伺服器類型,例如 PostgreSQL 。 |
serverVersion |
string | 資料庫伺服器版本,2.3.1 例如 Aurora Postgre SQL。 |
serviceName |
string | 服務名稱,例如 Amazon Aurora PostgreSQL-Compatible edition 。 |
sessionId |
int | 虛擬唯一的工作階段識別符。 |
sessionId |
int | 虛擬唯一的工作階段識別符。 |
startTime (僅限 1.1 版資料庫活動記錄) |
string |
開始執行SQL陳述式的時間。 若要計算SQL陳述式的大概執行時間,請使用 |
statementId |
int | 用戶端SQL陳述式的識別碼。計數器位於工作階段層級,並會隨用戶端輸入的每個SQL陳述式遞增。 |
substatementId |
int | SQL子陳述式的識別碼。這個值會針對statementId 欄位所識別的每個SQL陳述式計算包含的子陳述式。 |
type |
string | 事件類型。有效值為 record 或 heartbeat 。 |
databaseActivityEvent我的 Aurora 的列表字段 SQL
以下是我的 Aurora 的databaseActivityEventList
字段SQL。
欄位 | 資料類型 | 描述 |
---|---|---|
class |
string |
活動事件的類別。 「我的 Aurora」的SQL有效值如下:
|
clientApplication |
string | 用戶端報告用來連接的應用程式。用戶端不需提供此資訊,因此此值可以是 Null。 |
command |
string |
SQL陳述式的一般類別。此欄位的值取決於 當
當
|
commandText |
string |
對於 對於 對於 Aurora MySQL,引號之類的字元會在前面加上反斜線,代表逸出字元。 重要每個陳述式的全SQL文都會顯示在稽核記錄中,包括任何敏感資料。不過,如果 Aurora 可以從內容判斷資料庫使用者密碼,例如下列SQL陳述式,就會密碼。
注意指定此處所顯示提示以外的密碼,作為安全最佳實務。 |
databaseName |
string | 使用者連接的資料庫。 |
dbProtocol |
string | 資料庫通訊協定。目前,此值始終MySQL 適用於「我的 Aurora」SQL。 |
dbUserName |
string | 用戶端驗證所用的資料庫使用者。 |
endTime (僅限 1.2 版資料庫活動記錄) |
string |
SQL敘述句執行結束的時間。它以協調世界時(UTC)格式表示。 若要計算SQL陳述式的執行時間,請使用 |
errorMessage (僅限 1.1 版資料庫活動記錄) |
string |
如果有任何錯誤,該欄位會填入由資料庫伺服器產生的錯誤訊息。對於未導致錯誤的正常陳述式,此 錯誤被定義為任何會產生嚴重性等級 內部我的SQL服務器錯誤(如後台檢查指針進程錯誤)不會生成錯誤消息。不過,無論日誌嚴重性層級的設定為何,仍會發出這類事件的記錄。這可以防止攻擊者關閉記錄日誌以嘗試避免偵測。 另請參閱 |
exitCode |
int | 工作階段結束記錄所用的值。清除結束時,此會包含結束代碼。在某些失敗狀況下可能無法隨時取得結束代碼。在這種情況下,此值可能是零,也可能是空白。 |
logTime |
string | 在稽核程式碼路徑中記錄的時間戳記。它以協調世界時(UTC)格式表示。如需計算陳述式持續時間的最準確方式,請參閱 startTime 和 endTime 欄位。 |
netProtocol |
string | 網路通訊協定。目前,此值始終TCP 適用於「我的 Aurora」SQL。 |
objectName |
string | 資料庫物件的名稱 (如果SQL陳述式是在其中一個上運作)。只有在SQL陳述式在資料庫物件上運作時才會使用此欄位。如果SQL陳述式不是在物件上運作,則此值為空白。若要建構物件的完整名稱,請結合 databaseName 和 objectName 。如果查詢涉及多個物件,則此欄位可以是以逗號分隔的名稱清單。 |
objectType |
string |
資料表、索引、檢視等之類的資料庫物件類型。只有在SQL陳述式在資料庫物件上運作時才會使用此欄位。如果SQL陳述式不是在物件上運作,則此值為 null。 「我的 Aurora」的有效值SQL包括下列項目:
|
paramList |
string | 此欄位不適用於「我的 Aurora」,SQL而且永遠為空。 |
pid |
int | 後端程序的程序 ID,此程序的配置是用來提供用戶端連線。重新啟動資料庫伺服器時,pid 變更和 statementId 欄位的計數器會重新啟動。 |
remoteHost |
string | 發出SQL陳述式的用戶端 IP 位址或主機名稱。對於 Aurora MySQL,使用哪一個取決於資料庫的skip_name_resolve 參數設定。localhost 的值表示來自 rdsadmin 特殊使用者的活動。 |
remotePort |
string | 用戶端連接埠號碼。 |
rowCount |
int | SQL陳述式所影響或擷取的表格資料列數目。此欄位僅用於資料操作語言 (DML) SQL 陳述式的陳述式。如果SQL陳述式不是DML陳述式,則此值為 null。 |
serverHost |
string | 資料庫伺服器執行個體識別符。 |
serverType |
string | 資料庫伺服器類型,例如 MySQL 。 |
serverVersion |
string | 資料庫伺服器版本。目前,此值始終MySQL 5.7.12 適用於「我的 Aurora」SQL。 |
serviceName |
string | 服務的名稱。目前,此值始終Amazon Aurora MySQL 適用於「我的 Aurora」SQL。 |
sessionId |
int | 虛擬唯一的工作階段識別符。 |
startTime (僅限 1.1 版資料庫活動記錄) |
string |
開始執行SQL陳述式的時間。它以協調世界時(UTC)格式表示。 若要計算SQL陳述式的執行時間,請使用 |
statementId |
int | 用戶端SQL陳述式的識別碼。計數器會隨用戶端輸入的每個SQL陳述式遞增。當資料庫執行個體重新啟動時,計數器會重設。 |
substatementId |
int | SQL子陳述式的識別碼。對於具有類別 MAIN 的事件此值是 1,對於具有類別 AUX 的事件則為 2。使用此 statementId 欄位可識別由相同陳述式產生的所有事件。 |
transactionId (僅限 1.2 版資料庫活動記錄) |
int | 交易的識別符。 |
type |
string | 事件類型。有效值為 record 或 heartbeat 。 |