MariaDB 稽核外掛程式支援 MySQL - Amazon Relational Database Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

MariaDB 稽核外掛程式支援 MySQL

Amazon RDS 針對 MySQL 資料庫執行個體提供以開放原始碼 MariaDB 稽核外掛程式為基礎的稽核外掛程式。如需詳細資訊,請參閱 MySQL Server GitHub 儲存庫的稽核外掛程式

注意

MySQL 的稽核外掛程式以 MariaDB 稽核外掛程式為基礎。在本文中,我們將其稱為 MariaDB 稽核外掛程式。

MariaDB 稽核外掛程式會記錄資料庫活動,包含登入資料庫的使用者,以及針對資料庫執行的查詢。資料庫活動的記錄會儲存在日誌檔中。

注意

目前,MariaDB 稽核外掛程式僅支援下列 RDS for MySQL 版本:

  • MySQL 8.0.28 和更新的 8.0 版

  • 所有 MySQL 5.7 版本

稽核外掛程式選項設定

Amazon RDS 支援 MariaDB 稽核外掛程式的下列設定。

選項設定 有效值 預設值 描述

SERVER_AUDIT_FILE_PATH

/rdsdbdata/log/audit/

/rdsdbdata/log/audit/

日誌檔的位置。日誌檔包含 SERVER_AUDIT_EVENTS 中指定之活動的記錄。如需更多詳細資訊,請參閱 檢視並列出資料庫日誌檔案MySQL 資料庫日誌檔案

SERVER_AUDIT_FILE_ROTATE_SIZE

1–1000000000

1000000

達到時導致檔案輪換的大小 (以位元組表示)。如需更多詳細資訊,請參閱 RDS for MySQL 資料庫日誌概觀

SERVER_AUDIT_FILE_ROTATIONS

0–100

9

要在 server_audit_output_type=file 時儲存的日誌輪換次數。如果設定為 0,則日誌檔永遠不會輪換。如需詳細資訊,請參閱RDS for MySQL 資料庫日誌概觀下載資料庫日誌檔案

SERVER_AUDIT_EVENTS

CONNECT, QUERY, QUERY_DDL, QUERY_DML, QUERY_DML_NO_SELECT, QUERY_DCL

CONNECT, QUERY

要記錄在日誌中之活動的類型。安裝 MariaDB 稽核外掛程式是自行記錄的。

  • CONNECT:記錄與資料庫的成功和不成功連線,以及與資料庫的中斷連線。

  • QUERY:記錄針對資料庫執行之所有查詢的文字。

  • QUERY_DDL:類似於 QUERY 事件,但只傳回資料定義語言 (DDL) 查詢 (CREATEALTER 等)。

  • QUERY_DML:類似於 QUERY 事件,但只傳回資料處理語言 (DML) 查詢 (INSERTUPDATESELECT 等)。

  • QUERY_DML_NO_SELECT:類似 QUERY_DML 事件,但不會記錄 SELECT 查詢。

    QUERY_DML_NO_SELECT 設定僅支援 RDS for MySQL 5.7.34 和更新的 5.7 版本以及 8.0.25 版和更新的 8.0 版本。

  • QUERY_DCL:類似於 QUERY 事件,但只傳回資料控制語言 (DCL) 查詢 (GRANTREVOKE 等)。

對於 MySQL,不支援 TABLE

SERVER_AUDIT_INCL_USERS

多個以逗號分隔的值

只包括來自所指定使用者的活動。預設情況下,會記錄所有使用者的活動。SERVER_AUDIT_INCL_USERSSERVER_AUDIT_EXCL_USERS 是相互排斥的。如果您將值新增至 SERVER_AUDIT_INCL_USERS,請確保未將任何值新增至 SERVER_AUDIT_EXCL_USERS

SERVER_AUDIT_EXCL_USERS

多個以逗號分隔的值

排除來自所指定使用者的活動。預設情況下,會記錄所有使用者的活動。SERVER_AUDIT_INCL_USERSSERVER_AUDIT_EXCL_USERS 是相互排斥的。如果您將值新增至 SERVER_AUDIT_EXCL_USERS,請確保未將任何值新增至 SERVER_AUDIT_INCL_USERS

rdsadmin 使用者會每次查詢資料庫,以檢查資料庫的運作狀態。根據您的其他設定,此活動可能會導致您的日誌檔大小非常快速地變得非常大。如果您不需要記錄此活動,請將 rdsadmin 使用者新增至 SERVER_AUDIT_EXCL_USERS 清單。

注意

即使針對此選項設定指定了使用者,也會一律記錄所有使用者的 CONNECT 活動。

SERVER_AUDIT_LOGGING

ON

ON

記錄為作用中狀態。唯一有效的值為 ON。Amazon RDS 不支援停用記錄。如果想要停用記錄,請移除 MariaDB 稽核外掛程式。如需更多詳細資訊,請參閱 移除 MariaDB 稽核外掛程式

SERVER_AUDIT_QUERY_LOG_LIMIT

0–2147483647

1024

記錄中查詢字串長度的限制。

新增 MariaDB 稽核外掛程式

將 MariaDB 稽核外掛程式新增至資料庫執行個體的一般程序如下:

  • 建立新的選項群組,或是複製或修改現有選項群組

  • 將選項新增至選項群組

  • 將選項群組與資料庫執行個體關聯

在您新增 MariaDB 稽核外掛程式之後,不需要重新啟動資料庫執行個體。只要選項群組作用中,稽核就會立即開始。

重要

新增 MariaDB 稽核外掛程式至資料庫執行個體可能會導致停機。我們建議在維護視窗下或資料庫低負載的時候新增 MariaDB 稽核外掛程式。

新增 MariaDB 稽核外掛程式
  1. 判斷要使用的選項群組。您可以建立新的選項群組或使用現有的選項群組。如果您要使用現有的選項群組,請跳到下一個步驟。否則,建立自訂的資料庫選項群組。為 Engine (引擎) 選擇 mysql,並為 Major engine version (主要引擎版本) 選擇 5.78.0。如需更多詳細資訊,請參閱 建立選項群組

  2. MARIADB_AUDIT_PLUGIN 選項新增至選項群組,並設定選項設定。如需新增選項的詳細資訊,請參閱將選項新增至選項群組。如需每項設定的詳細資訊,請參閱稽核外掛程式選項設定

  3. 將選項群組套用至新的或現有的資料庫執行個體。

稽核日誌格式

日誌檔案以 UTF-8 格式的逗號分隔變數 (CSV) 檔案表示。

提示

日誌檔案項目不會循序排列。若要排序項目,請使用時間戳記值。若要查看最新事件,您可能必須檢閱所有日誌檔案。為了更靈活排序和搜尋日誌資料,請開啟設定,將稽核日誌上傳到 CloudWatch,然後使用 CloudWatch 界面檢視這些日誌。

若要查看包含更多欄位類型和以 JSON 格式輸出的稽核資料,您也可以使用資料庫活動串流功能。如需更多詳細資訊,請參閱 使用資料庫活動串流來監控 Amazon RDS

稽核日誌檔案的每一列依指定順序包含以下逗號分隔的資訊:

欄位 描述

timestamp

所記錄事件的 YYYYMMDD 後有 HH:MI:SS (24 小時制)。

serverhost

為其記錄事件之執行個體的名稱。

username

使用者的連線使用者名稱。

host

使用者連線來源的主機。

connectionid

所記錄操作的連線 ID 號碼。

queryid

查詢 ID 號碼,可用來尋找關聯式資料表事件和相關的查詢。若為 TABLE 事件,則會新增多行。

operation

記錄的動作類型。可能值為:CONNECTQUERYREADWRITECREATEALTERRENAMEDROP

database

USE 命令設定的作用中資料庫。

物件

若為 QUERY 事件,此值指出資料庫所執行的查詢。若為 TABLE 事件,則指出資料表名稱。

retcode

所記錄操作的傳回碼。

connection_type

與伺服器之連線的安全狀態。可能值為:

  • 0 – 未定義

  • 1 – TCP/IP

  • 2 – 槽

  • 3 – 具名管道

  • 4 – SSL/TLS

  • 5 – 共用記憶體

只有 RDS for MySQL 5.7.34 版和更新的 5.7 版及所有 8.0 版中包含此欄位。

檢視和下載 MariaDB 稽核外掛程式日誌

在啟用 MariaDB 稽核外掛程式之後,您可以採取與存取任何其他文字型日誌檔相同的方式來存取日誌檔中的結果。稽核日誌檔位於 /rdsdbdata/log/audit/。如需在主控台中檢視日誌檔的相關資訊,請參閱檢視並列出資料庫日誌檔案。如需下載日誌檔的相關資訊,請參閱下載資料庫日誌檔案

修改 MariaDB 稽核外掛程式設定

在啟用 MariaDB 稽核外掛程式之後,您可以修改設定。如需如何修改選項設定的詳細資訊,請參閱修改選項設定。如需每項設定的詳細資訊,請參閱稽核外掛程式選項設定

移除 MariaDB 稽核外掛程式

Amazon RDS 不支援在 MariaDB 稽核外掛程式中關閉記錄。不過,您可以從資料庫執行個體中移除外掛程式。當您移除 MariaDB 稽核外掛程式時,資料庫執行個體會自動重新啟動來停止稽核。

若要從資料庫執行個體中移除 MariaDB 稽核外掛程式,請執行下列其中一個動作:

  • 從其所屬的選項群組中移除 MariaDB 稽核外掛程式。此變更會影響使用選項群組的所有資料庫執行個體。如需詳細資訊,請參閱 從選項群組移除選項

  • 修改資料庫執行個體,並指定不包括外掛程式的不同選項群組。此變更會影響單一資料庫執行個體。您可以指定預設的 (空白) 選項群組或不同的自訂選項群組。如需更多詳細資訊,請參閱 修改 Amazon RDS 資料庫執行個體