文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (US Ltr) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 參考手冊  /  ...  /  用戶端明文可插拔驗證

8.4.1.3 用戶端明文可插拔驗證

有一個用戶端驗證外掛程式可供使用,讓用戶端能夠以明文方式將密碼傳送至伺服器,無需雜湊或加密。這個外掛程式已內建於 MySQL 用戶端程式庫中。

下表顯示外掛程式名稱。

表 8.17 明文驗證的外掛程式和程式庫名稱

外掛程式或檔案 外掛程式或檔案名稱
伺服器端外掛程式 無,請參閱討論
用戶端外掛程式 mysql_clear_password
程式庫檔案 無(外掛程式已內建)

許多用戶端驗證外掛程式會在用戶端將密碼傳送至伺服器之前,先執行密碼雜湊或加密。這讓用戶端能夠避免以明文方式傳送密碼。

對於需要伺服器接收在用戶端輸入的密碼的驗證方案,無法執行雜湊或加密。在這種情況下,會使用用戶端 mysql_clear_password 外掛程式,讓用戶端能夠以明文方式將密碼傳送至伺服器。沒有對應的伺服器端外掛程式。相反地,mysql_clear_password 可以在用戶端上使用,與任何需要明文密碼的伺服器端外掛程式搭配使用。(例如 PAM 和簡單 LDAP 驗證外掛程式;請參閱第 8.4.1.4 節,「PAM 可插拔驗證」第 8.4.1.6 節,「LDAP 可插拔驗證」。)

以下討論提供特定於明文可插拔驗證的使用資訊。如需 MySQL 中可插拔驗證的一般資訊,請參閱第 8.2.17 節,「可插拔驗證」

注意

在某些設定中,以明文方式傳送密碼可能存在安全性問題。為了避免在任何密碼可能被攔截的情況下發生問題,用戶端應使用可保護密碼的方法連線至 MySQL 伺服器。可行的方法包括 SSL(請參閱第 8.3 節,「使用加密連線」)、IPsec 或私有網路。

為了降低不小心使用 mysql_clear_password 外掛程式的可能性,MySQL 用戶端必須明確啟用它。這可以透過幾種方式來完成

  • LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN 環境變數設定為以 1Yy 開頭的值。這會為所有用戶端連線啟用外掛程式。

  • mysqlmysqladminmysqlcheckmysqldumpmysqlshowmysqlslap用戶端程式支援 --enable-cleartext-plugin 選項,可在每次調用時啟用外掛程式。

  • C API 函式 mysql_options() 支援 MYSQL_ENABLE_CLEARTEXT_PLUGIN 選項,允許在每個連線啟用外掛程式。此外,任何使用 libmysqlclient 並讀取選項檔的程式,都可以在用戶端程式庫讀取的選項群組中加入 enable-cleartext-plugin 選項,來啟用此外掛程式。