在Symfony上的Doctrine中为MongoDB配置ssl连接

时间:2017-02-06 18:54:11

标签: mongodb ssl doctrine symfony

我正在努力弄清楚如何使用--sslCAFile <file>--sslAllowInvalidCertificates将Symfony中的连接配置为启用ssl的Mongo数据库。我可以使用以下命令通过shell成功连接:

mongo --ssl --sslAllowInvalidCertificates <host>:<port>/<db_name> -u <username> -p<password>

现在,如何将其转换为doctrine_mongodb配置?我发现设置ssl: true可能有效,但无法在任何地方找到设置--sslAllowInvalidCertificates--sslCAFile <file>的文档。

这是我到目前为止所获得的,但由于缺少旗帜而无法工作:

doctrine_mongodb:
connections:
    default:
        server: <connection_string>
        username: <username>
        password: <password>
        options:
            ssl: true

sslAllowInvalidCertificates: true添加到options对象会引发错误 - Doctrine不知道该字段。

2 个答案:

答案 0 :(得分:0)

事实证明,在当前版本的Doctrine MongoDB软件包(3.2.1)中无法做到这一点。如评论here,实现不支持将驱动程序选项传递给MongoClient构造函数,而config schema不支持创建stream context

答案 1 :(得分:0)

现在可在Master分支中使用,并将很快包含在稳定分支中:) https://github.com/doctrine/DoctrineMongoDBBundle/pull/397