如果我用 -DENABLE_SSL=WINDOWS (windows安全通道)编译c驱动程序,如果客户端pem密钥文件有密码,连接将失败 .

日志的错误信息:


[error @ stream-secure-channel]无法解析私钥 . ASN1坏标签值我 . (0x8009310B)[warning @ stream-secure-channel]已请求客户端证书

注意:

  • 我使用以下命令为pem文件创建私钥:openssl genrsa -des3 -out server.key 2048,然后输入密码:1234

使用mongo.exe,我可以成功地从我自己的工作计算机连接相同的pem文件和密码:mongo --host 10.154.10.39 --ssl --authenticationDatabase admin --username user1 -p 123 --sslCAFile d:/ ca .pem --sslPEMKeyFile d:/cry.pem --sslPEMKeyPassword 1234

但是,如果我的程序使用mongocxx驱动程序,则总是失败 .

  • 如果我使用用“-DENABLE_SSL = OPENSSL”编译的驱动程序,这个问题就消失了 .