C++11 哪个Poco C++;要使用的PEM文件?

C++11 哪个Poco C++;要使用的PEM文件?,c++11,https,x509certificate,poco-libraries,C++11,Https,X509certificate,Poco Libraries,当创建使用Poco的HTTPSClient的应用程序时,我应该使用哪个PEM文件--“any.PEM”或“rootcert.PEM”?示例应用程序同时使用这两种方法,但我的应用程序并不基于Poco“Application”类,我的应用程序只是使用HTTPS服务器的API(即不需要私钥) 我连接到的服务器具有来自“有效授权机构”的证书,并且是通配符证书(*.company.com) 谢谢您的帮助。您需要“有效授权机构”的证书,或者为自签名证书添加类似这样的代码 SSLInitializer ssl

当创建使用Poco的HTTPSClient的应用程序时,我应该使用哪个PEM文件--“any.PEM”或“rootcert.PEM”?示例应用程序同时使用这两种方法,但我的应用程序并不基于Poco“Application”类,我的应用程序只是使用HTTPS服务器的API(即不需要私钥)

我连接到的服务器具有来自“有效授权机构”的证书,并且是通配符证书(*.company.com)


谢谢您的帮助。

您需要“有效授权机构”的证书,或者为自签名证书添加类似这样的代码

SSLInitializer sslInitializer;
Poco::SharedPtr<Poco::Net::InvalidCertificateHandler> ptrCert = new AcceptCertificateHandler(false); 
Poco::Net::Context context(Poco::Net::Context::CLIENT_USE, "", "", "", Poco::Net::Context::VERIFY_RELAXED, 9, false, "ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH");
Poco::Net::SSLManager::instance().initializeClient(0, ptrCert, &context); 
ssclinizizer-ssclinizizer;
Poco::SharedPtr ptrCert=新的AcceptCertificateHandler(false);
Poco::Net::Context Context(Poco::Net::Context::CLIENT_USE,“,”,“,Poco::Net::Context::VERIFY_RELAXED,9,false,“ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH”);
Poco::Net::SSLManager::instance().initializeClient(0、ptrCert和上下文);

您需要来自“有效授权机构”的证书,或者为自签名证书添加类似的代码

SSLInitializer sslInitializer;
Poco::SharedPtr<Poco::Net::InvalidCertificateHandler> ptrCert = new AcceptCertificateHandler(false); 
Poco::Net::Context context(Poco::Net::Context::CLIENT_USE, "", "", "", Poco::Net::Context::VERIFY_RELAXED, 9, false, "ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH");
Poco::Net::SSLManager::instance().initializeClient(0, ptrCert, &context); 
ssclinizizer-ssclinizizer;
Poco::SharedPtr ptrCert=新的AcceptCertificateHandler(false);
Poco::Net::Context Context(Poco::Net::Context::CLIENT_USE,“,”,“,Poco::Net::Context::VERIFY_RELAXED,9,false,“ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH”);
Poco::Net::SSLManager::instance().initializeClient(0、ptrCert和上下文);

我获取的证书是有效的,但通配符导致无效证书失败。我获取的证书是有效的,但通配符导致无效证书失败。