在php中使用pdo连接mysql服务器时,我需要指定证书颁发机构吗?



我们在mysql服务器上使用自签名证书启用ssl,并要求ssluser使用ssl。所以我不能连接下面的选项;

mysql -u ssluser -p

但我可以连接下面的选项;

mysql -u ssluser -p --ssl=1

在连接时,我不需要指定为客户端创建的CA证书。

我正在连接mysql服务器与以下选项;

PDO::MYSQL_ATTR_SSL_CA => true,
PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT => false,

但是我没有指定任何文件。mysql是否像web服务器一样工作并向客户端发送公钥?还是我的设置错了?

我正在使用mysql 8.

谢谢

您的连接似乎很好。您可以在mysql命令行上通过发出status命令并查找SSL行来验证这一点。

MySQL确实像web服务器一样工作。您的配置不需要客户端提供证书。

Web服务器可以要求浏览器提供客户端证书,但大多数服务器不这样做。类似地,MySQL服务器可以要求客户端提供客户端证书,但是你的服务器不需要。

我相信你可以走了。

相关内容