当连接到启用TLS(有时称为SSL)的MySQL服务器时,可以使用加密连接。MySQL Shell的大部分配置都是基于MySQL服务器使用的选项使用加密连接获取更多信息。
要在MySQL Shell启动时配置加密连接,使用以下命令选项:
——ssl
:已弃用,将在未来版本中删除。使用——ssl-mode
.此选项启用或禁用加密连接。——ssl-mode
:此选项指定到服务器的连接所需的安全状态。——ssl-ca =
: PEM格式文件的路径,该文件包含受信任的SSL证书颁发机构列表。file_name
——ssl-capath =
: PEM格式的受信任SSL证书颁发机构证书所在目录的路径。dir_name
——ssl-cert =
:用于建立加密连接的PEM格式SSL证书文件的名称。file_name
——ssl cipher =
:用于建立加密连接的SSL密码的名称。的名字
——ssl密钥=
:用于建立加密连接的PEM格式的SSL密钥文件的名称。file_name
——ssl-crl =
:包含证书吊销的文件路径,格式为PEM。的名字
——ssl-crlpath =
: PEM格式的证书吊销列表文件所在目录的路径。dir_name
——tls =
:允许加密连接的TLS协议,以逗号分隔的列表指定。例如版本
——tls =
.TLSv1.1, TLSv1.2
——tls-ciphersuites =
:允许加密连接的TLS密码套件,以冒号分隔的TLS密码套件名称列表指定。例如套房
——tls-ciphersuites =
.8.0.18版本新增。TLS_DHE_PSK_WITH_AES_128_GCM_SHA256: TLS_CHACHA20_POLY1305_SHA256
或者,可以将SSL选项编码为类似uri的连接字符串的一部分,作为查询元素的一部分。可用的SSL选项与上面列出的相同,但没有前面的连字符。例如,ssl-ca
就相当于——ssl-ca
.
在类似uri的字符串中指定的路径必须以百分比编码,例如:
ssluser@127.0.0.1 ? ssl-ca % 3 d % 2含有% 2 fclientcert % 2 fca-cert.pem % 26 ssl-cert % 3 d % 2来回\ % 2 fclientcert % 2 fclient-cert。pem % 26 ssl密钥% 3 d % 2含有% 2 fclientcert % 2 fclient-key .pem
看到使用类似uri的字符串或键值对连接到服务器获取更多信息。
要在JavaScript或Python模式下为脚本会话建立加密连接,请在connectionData
字典。例如:
mysqlx. js> var session=mysqlx. jsgetSession({主机:'localhost',用户:'root',密码:'密码ssl_cert ssl_ca:“path_to_ca_file”:“path_to_cert_file”,ssl_key:“path_to_key_file”});
使用mysqlx.getSession ()
,mysql.getSession ()
,或mysql.getClassicSession ()
使用ssl-mode =要求
如果否,则为默认值ssl-mode
提供,两者都没有ssl-ca
也不ssl-capath
提供。如果没有ssl-mode
提供和任何ssl-ca
或ssl-capath
所创建的会话默认为ssl-mode = VERIFY_CA
.
看到使用键值对连接获取更多信息。