如何使用PHP userland库连接启用SSL的MongoDB?

时间:2016-02-14 14:11:47

标签: php mongodb mongodb-php

我正在使用PHP userland库,可在此处找到:https://github.com/mongodb/mongo-php-library ,文档位于:http://mongodb.github.io/mongo-php-library/classes/client/

如何提供SSL选项以及使用哪种构造函数?我假设MongoDB / Client但文档很少。 我在服务器上有通常的;将net.ssl设置为requireSSL的CA文件,服务器证书和私钥文件。

因此,如果有人尝试了任何东西,那么如果你能列出有用的东西就会很棒。

更新 很多谷歌搜索带我去this page。我只能成功连接mongo shell,但绝对不能通过php库。我在Centos7上使用MongoDB 3.2.1。

此外,我发现客户端证书需要x509证书中的两个附加字段[keyUsage = digitalSignature,extendedKeyUsage = clientAuth],如叙述here。现在虽然这不是不可能的,但在我看来,这对于我的实施来说并不是一种非常易于管理或可扩展的方式。

我发现的一件奇怪的事情是最终客户端证书中的CN需要是“localhost”。你不能省略最后一个时期。而且--host参数也必须是“localhost”。 (不仅仅是localhost),否则验证失败。但是,如果您尝试使用CN创建证书作为localhost,您将永远无法连接到服务器,并且验证每次都会失败。

0 个答案:

没有答案