我找不到有关此信息。是否可以通过QODBC启用SSL?如果是这样,怎么办?

我在QMySql中使用SSL或在QODBC中使用非SSL连接都没有问题。
 但是,位于http://qt-project.org/doc/qt-5.1/qtsql/sql-driver.html#qodbc的QODBC驱动程序文档没有提及SSL + ODBC,并且QODBC拒绝了不在http://qt-project.org/doc/qt-5.1/qtsql/qsqldatabase.html#setConnectOptions列表中的参数,这些参数均与SSL不相关。

有趣的是,我在任何地方都找不到这些选项,其含义或允许的值的文档。我完全可以找到的那些选项的唯一提及是在该文档页面上,该页面没有说明它是详尽的列表还是提供任何进一步的信息。

我可以找到的关于将SSL与QODBC一起使用的唯一其他直接参考是四年前的一篇未答复的文章:
http://www.qtcentre.org/threads/34367-SSL-with-QODBC

QODBC还是与Quickbooks显然无关的ODBC产品的名称,这使发现这些信息更加复杂。

这是我在http://qt-project.org/forums/viewthread/36850/上的帖子的副本

最佳答案

您需要将安全连接选项作为ODBC数据源的一部分传递给QSqlDatabase::setDatabaseName。 ODBC数据源应类似于:

Driver={MySQL ODBC 5.1 Driver};Server=server_address;Database=database;
User=username;Password=password;
sslca=ca.crt;sslcert=client.crt;sslkey=client.key;sslverify=1;


我没有检查这个确切的字符串,只是显示了想法(取自here)。有关详细信息,请参见MySQL Connector/ODBC documentation

关于qt - 如何使用Qt QODBC启用SSL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20957706/

10-12 17:29