文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 39.9Mb
PDF (A4) - 40.0Mb
Man Pages (TGZ) - 258.5Kb
Man Pages (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  使用加密連線與 X Plugin

22.5.3 使用加密連線與 X Plugin

本節說明如何設定 X Plugin 以使用加密連線。如需更多背景資訊,請參閱第 8.3 節,「使用加密連線」

為了啟用加密連線的設定支援,X Plugin 具有 mysqlx_ssl_xxx 系統變數,其值可能與 MySQL 伺服器使用的 ssl_xxx 系統變數不同。例如,X Plugin 可以擁有與 MySQL 伺服器所使用的 SSL 金鑰、憑證和憑證授權單位檔案不同的檔案。這些變數說明於第 22.5.6.2 節,「X Plugin 選項與系統變數」。同樣地,X Plugin 具有其自己的 Mysqlx_ssl_xxx 狀態變數,其對應於 MySQL 伺服器加密連線的 Ssl_xxx 狀態變數。請參閱第 22.5.6.3 節,「X Plugin 狀態變數」

在初始化時,X Plugin 會如下判斷其加密連線的 TLS 環境

  • 如果所有 mysqlx_ssl_xxx 系統變數都具有其預設值,則 X Plugin 會使用與 MySQL 伺服器主要連線介面相同的 TLS 環境,其由 ssl_xxx 系統變數的值決定。

  • 如果任何 mysqlx_ssl_xxx 變數具有非預設值,則 X Plugin 會使用由其自己的系統變數值定義的 TLS 環境。(如果任何 mysqlx_ssl_xxx 系統變數設定為與其預設值不同的值,則會發生這種情況。)

這表示在啟用 X Plugin 的伺服器上,您可以選擇讓 MySQL 通訊協定和 X 通訊協定連線共用相同的加密設定(僅設定 ssl_xxx 變數),或透過個別設定 ssl_xxxmysqlx_ssl_xxx 變數,讓 MySQL 通訊協定和 X 通訊協定連線使用個別的加密設定。

若要讓 MySQL 通訊協定和 X 通訊協定連線使用相同的加密設定,請僅在 my.cnf 中設定 ssl_xxx 系統變數

[mysqld]
ssl_ca=ca.pem
ssl_cert=server-cert.pem
ssl_key=server-key.pem

若要為 MySQL 通訊協定和 X 通訊協定連線個別設定加密,請在 my.cnf 中設定 ssl_xxxmysqlx_ssl_xxx 系統變數

[mysqld]
ssl_ca=ca1.pem
ssl_cert=server-cert1.pem
ssl_key=server-key1.pem

mysqlx_ssl_ca=ca2.pem
mysqlx_ssl_cert=server-cert2.pem
mysqlx_ssl_key=server-key2.pem

如需有關設定連線加密支援的一般資訊,請參閱第 8.3.1 節,「設定 MySQL 以使用加密連線」。該討論是針對 MySQL 伺服器撰寫的,但 X Plugin 的參數名稱類似。(X Plugin mysqlx_ssl_xxx 系統變數名稱對應於 MySQL 伺服器的 ssl_xxx 系統變數名稱。)

決定 MySQL 通訊協定連線允許的 TLS 版本的 tls_version 系統變數也適用於 X 通訊協定連線。因此,兩種連線類型允許的 TLS 版本都相同。

每個連線的加密是選擇性的,但可以透過在建立使用者的 CREATE USER 陳述式中包含適當的 REQUIRE 子句,來要求特定使用者對 X 通訊協定和 MySQL 通訊協定連線使用加密。如需詳細資訊,請參閱第 15.7.1.3 節,「CREATE USER 陳述式」。或者,若要要求所有使用者對 X 通訊協定和 MySQL 通訊協定連線使用加密,請啟用 require_secure_transport 系統變數。如需其他資訊,請參閱設定加密連線為強制性