- 8.4.4.1 金鑰環元件與金鑰環外掛程式
- 8.4.4.2 金鑰環元件安裝
- 8.4.4.3 金鑰環外掛程式安裝
- 8.4.4.4 使用 component_keyring_file 基於檔案的金鑰環元件
- 8.4.4.5 使用 component_keyring_encrypted_file 加密基於檔案的金鑰環元件
- 8.4.4.6 使用 keyring_okv KMIP 外掛程式
- 8.4.4.7 使用 keyring_aws Amazon Web Services 金鑰環外掛程式
- 8.4.4.8 使用 HashiCorp Vault 金鑰環外掛程式
- 8.4.4.9 使用 Oracle Cloud Infrastructure Vault 金鑰環元件
- 8.4.4.10 支援的金鑰環金鑰類型和長度
- 8.4.4.11 在金鑰環金鑰儲存區之間遷移金鑰
- 8.4.4.12 一般用途金鑰環金鑰管理函式
- 8.4.4.13 外掛程式特定金鑰環金鑰管理函式
- 8.4.4.14 金鑰環中繼資料
- 8.4.4.15 金鑰環命令選項
- 8.4.4.16 金鑰環系統變數
MySQL 伺服器支援金鑰環,讓內部伺服器元件和外掛程式能夠安全地儲存敏感資訊以供稍後擷取。實作包含以下元素
管理後端儲存區或與儲存後端通訊的金鑰環元件和外掛程式。金鑰環的使用涉及從可用的元件和外掛程式中安裝一個。金鑰環元件和外掛程式都管理金鑰環資料,但設定方式不同,且可能存在操作差異 (請參閱 第 8.4.4.1 節,「金鑰環元件與金鑰環外掛程式」)。
這些金鑰環元件可用
component_keyring_file
:將金鑰環資料儲存在伺服器主機本機的檔案中。適用於 MySQL 社群版和 MySQL 企業版發行版本。請參閱 第 8.4.4.4 節,「使用 component_keyring_file 基於檔案的金鑰環元件」。component_keyring_encrypted_file
:將金鑰環資料儲存在伺服器主機本機的加密且受密碼保護的檔案中。適用於 MySQL 企業版發行版本。請參閱 第 8.4.4.5 節,「使用 component_keyring_encrypted_file 加密基於檔案的金鑰環元件」。component_keyring_oci
:將金鑰環資料儲存在 Oracle Cloud Infrastructure Vault 中。適用於 MySQL 企業版發行版本。請參閱 第 8.4.4.9 節,「使用 Oracle Cloud Infrastructure Vault 金鑰環元件」。
這些金鑰環外掛程式可用
keyring_okv
:適用於 KMIP 相容後端金鑰環儲存產品的 KMIP 1.1 外掛程式,例如 Oracle Key Vault 和 Gemalto SafeNet KeySecure Appliance。適用於 MySQL 企業版發行版本。請參閱 第 8.4.4.6 節,「使用 keyring_okv KMIP 外掛程式」。keyring_aws
:與 Amazon Web Services 金鑰管理服務通訊以產生金鑰,並使用本機檔案儲存金鑰。適用於 MySQL Enterprise Edition 發行版本。請參閱第 8.4.4.7 節,「使用 keyring_aws Amazon Web Services 金鑰環外掛程式」。keyring_hashicorp
:與 HashiCorp Vault 通訊以進行後端儲存。適用於 MySQL Enterprise Edition 發行版本。請參閱第 8.4.4.8 節,「使用 HashiCorp Vault 金鑰環外掛程式」。
金鑰環金鑰管理用的金鑰環服務介面。此服務可在兩個層級存取
SQL 介面:在 SQL 陳述式中,呼叫第 8.4.4.12 節,「通用金鑰環金鑰管理函數」中所述的函數。
C 介面:在 C 語言程式碼中,呼叫第 7.6.9.2 節,「金鑰環服務」中所述的金鑰環服務函數。
金鑰中繼資料存取
Performance Schema
keyring_keys
表格會公開金鑰環中金鑰的中繼資料。金鑰中繼資料包括金鑰 ID、金鑰擁有者和後端金鑰 ID。keyring_keys
表格不會公開任何敏感的金鑰環資料,例如金鑰內容。請參閱第 29.12.18.2 節,「keyring_keys 表格」。Performance Schema
keyring_component_status
表格提供關於所使用金鑰環元件的狀態資訊(如果已安裝)。請參閱第 29.12.18.1 節,「keyring_component_status 表格」。
金鑰移轉功能。MySQL 支援在金鑰儲存區之間移轉金鑰,讓 DBA 可以將 MySQL 安裝從一個金鑰儲存區切換到另一個。請參閱第 8.4.4.11 節,「在金鑰環金鑰儲存區之間移轉金鑰」。
金鑰環外掛程式的實作方式已修改為使用元件基礎架構。這是透過內建名為
daemon_keyring_proxy_plugin
的外掛程式來實現,該外掛程式充當外掛程式和元件服務 API 之間的橋樑。請參閱第 7.6.8 節,「金鑰環 Proxy 橋接外掛程式」。
對於加密金鑰管理,component_keyring_file
和 component_keyring_encrypted_file
元件不適合做為法規遵循解決方案。PCI、FIPS 等安全標準要求使用金鑰管理系統,以在金鑰儲存區或硬體安全模組 (HSM) 中保護、管理和防護加密金鑰。
在 MySQL 中,金鑰環服務消費者包括
InnoDB
儲存引擎使用金鑰環來儲存其用於表空間加密的金鑰。請參閱第 17.13 節,「InnoDB 靜態資料加密」。MySQL Enterprise Audit 使用金鑰環來儲存稽核日誌檔案加密密碼。請參閱加密稽核日誌檔案。
二進位日誌和中繼日誌管理支援基於金鑰環的日誌檔案加密。啟用日誌檔案加密後,金鑰環會儲存用於加密二進位日誌檔案和中繼日誌檔案密碼的金鑰。請參閱第 19.3.2 節,「加密二進位日誌檔案和中繼日誌檔案」。
用於解密檔案金鑰的主金鑰會儲存在金鑰環中,該檔案金鑰會解密敏感系統變數的持續性值。MySQL 伺服器執行個體上必須啟用金鑰環元件,以支援持續性系統變數值的安全儲存,而不是金鑰環外掛程式,後者不支援此功能。請參閱持續性敏感系統變數。
如需一般金鑰環安裝指示,請參閱第 8.4.4.2 節,「金鑰環元件安裝」和第 8.4.4.3 節,「金鑰環外掛程式安裝」。如需特定金鑰環元件或外掛程式的安裝和設定資訊,請參閱描述該元件或外掛程式的章節。
如需使用金鑰環函數的相關資訊,請參閱第 8.4.4.12 節,「通用金鑰環金鑰管理函數」。
金鑰環元件、外掛程式和函數會存取金鑰環服務,該服務提供金鑰環的介面。如需存取此服務和撰寫金鑰環外掛程式的相關資訊,請參閱第 7.6.9.2 節,「金鑰環服務」和撰寫金鑰環外掛程式。