在 php 中使用 pdo 通过 tls 连接 mysql 服务器时,是否需要指定证书颁发机构?

Do I need to specify certificate authority when using pdo in php to connect mysql server over tls?

我们在 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 是否像网络服务器一样工作并向客户端发送 public 密钥?还是我的设置有误?

我正在使用 mysql 8.

谢谢

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

MySQL 确实像网络服务器一样工作。您的配置不需要您的客户端出示证书。

Web 服务器可以要求浏览器提供客户端证书,但大多数不需要。同样,MySQL 服务器可以要求客户端提供客户端证书,但您的服务器不需要。

我相信你很高兴。