當使用 MySQL 通訊堆疊 (group_replication_communication_stack=MYSQL
) 並且成員之間的連線是安全的 (group_replication_ssl_mode
未設定為 DISABLED
),本節討論的安全性設定不僅適用於分散式復原連線,也適用於成員之間的一般群組通訊。請參閱第 20.6.1 節,「連線安全性管理通訊堆疊」。
無論分散式復原連線是使用標準 SQL 用戶端連線還是分散式復原端點建立的,若要安全地設定連線,您可以使用群組複寫的專用分散式復原 SSL 選項。這些選項對應於用於群組通訊連線的伺服器 SSL 選項,但它們僅適用於分散式復原連線。預設情況下,分散式復原連線不使用 SSL,即使您已為群組通訊連線啟用 SSL,伺服器 SSL 選項也不適用於分散式復原連線。您必須分別設定這些連線。
如果將遠端複製作業用作分散式復原的一部分,則群組複寫會自動設定複製外掛程式的 SSL 選項,使其與您的分散式復原 SSL 選項設定相符。(如需複製外掛程式如何使用 SSL 的詳細資訊,請參閱為複製設定加密連線。)
分散式復原 SSL 選項如下:
group_replication_recovery_use_ssl
: 設定為ON
,讓群組複寫對分散式復原連線使用 SSL,包括遠端複製作業以及從捐贈者的二進位記錄傳輸狀態。如果您連線的伺服器未使用此選項的預設設定 (請參閱第 8.3.1 節,「設定 MySQL 使用加密連線」),請使用其他分散式復原 SSL 選項來決定要使用哪些憑證和加密套件。group_replication_recovery_ssl_ca
: 用於分散式復原連線的憑證授權單位 (CA) 檔案的路徑名稱。群組複寫會自動設定複製 SSL 選項clone_ssl_ca
以符合此選項。group_replication_recovery_ssl_capath
: 包含信任的 SSL 憑證授權單位 (CA) 憑證檔案的目錄路徑名稱。group_replication_recovery_ssl_cert
: 用於分散式復原連線的 SSL 公開金鑰憑證檔案的路徑名稱。群組複寫會自動設定複製 SSL 選項clone_ssl_cert
以符合此選項。group_replication_recovery_ssl_key
: 用於分散式復原連線的 SSL 私密金鑰檔案的路徑名稱。群組複寫會自動設定複製 SSL 選項clone_ssl_cert
以符合此選項。group_replication_recovery_ssl_verify_server_cert
:使分散式復原連線檢查捐贈者傳送的憑證中的伺服器通用名稱 (Common Name) 值。將此選項設定為ON
等同於為群組通訊連線的group_replication_ssl_mode
選項設定VERIFY_IDENTITY
,用於分散式復原連線。group_replication_recovery_ssl_crl
:包含憑證撤銷清單的檔案路徑名稱。group_replication_recovery_ssl_crlpath
:包含憑證撤銷清單的目錄路徑名稱。group_replication_recovery_ssl_cipher
:用於分散式復原連線的連線加密的可允許密碼清單。指定一個或多個密碼名稱的清單,並以冒號分隔。關於 MySQL 支援哪些加密密碼的資訊,請參閱第 8.3.2 節「加密連線 TLS 協定和密碼」。group_replication_recovery_tls_version
:當此伺服器實例是分散式復原連線中的用戶端,即加入的成員時,用於連線加密的一個或多個允許的 TLS 協定的逗號分隔清單。此系統變數的預設值取決於 MySQL Server 版本中支援的 TLS 協定版本。作為用戶端 (加入的成員) 和伺服器 (捐贈者) 參與每個分散式復原連線的群組成員,會協商他們都設定為支援的最高協定版本。group_replication_recovery_tls_ciphersuites
:當 TLSv1.3 用於分散式復原連線的連線加密,且此伺服器實例為分散式復原連線中的用戶端時,即加入的成員時,一個或多個允許的密碼套件的冒號分隔清單。如果當使用 TLSv1.3 時,此系統變數設定為NULL
(如果您未設定此系統變數,則為預設值),則允許預設啟用的密碼套件,如第 8.3.2 節「加密連線 TLS 協定和密碼」中所列。如果此系統變數設定為空字串,則不允許任何密碼套件,因此不使用 TLSv1.3。