ruby-on-rails - rails mysql2 : how to verify mysql server's SSL certificate?

标签 ruby-on-rails ssl ssl-certificate mysql2

我正在尝试通过 SSL 远程连接到 mysql 数据库,验证服务器的证书以匹配用于连接到服务器的 DNS 域。

使用命令行 mysql 工具,我可以使用 mysql --ssl-ca=/path/to/cacert.pem --ssl-verify-server 建立这样的连接-cert.

使用 rails mysql2,我设置了 sslca:¹,这会导致像 mysql --ssl-ca= 那样的未完全验证的 SSL 连接。如果服务器证书的域错误,我该如何执行与 --ssl-verify-server-cert 等效的操作,以便连接失败?

我尝试添加以下内容,但对这个问题没有影响:flags: SSL_VERIFY_SERVER_CERT, flags: CLIENT_SSL_VERIFY_SERVER_CERT, flags: 1073741824secure_auth: true

¹ config/database.yml 中的 sslca:/path/to/cacert.pem?sslca=/path/to/cacert.pem mysql2:// 网址

最佳答案

使用mysql2>=0.4.0,您可以在您的文件中设置sslverify: truesslca: path/to/cert_chain.pem适配器配置以使客户端验证服务器身份。

关于ruby-on-rails - rails mysql2 : how to verify mysql server's SSL certificate?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24172119/

相关文章:

azure - 在 Azure Web 应用程序中使用 SSL

linux - 如何在 Linux 上的 Tomcat 7 上启用 SSL 并使用 curl 进行测试?

java - SSL 证书验证在 Java 中失败 - 但在其他任何地方都有效

.net - 将 TLS 证书添加到异常为 : The request was aborted: Could not create SSL/TLS secure channel 的 API 请求

ruby-on-rails - Rails 5,minitest 5,我无法停用 "fail-fast"

ruby-on-rails - Rake 在 '*.rake' 目录中找不到 'lib/tasks' 文件

PHP session 在 SSL/非 SSL 页面之间被删除,即使在单独的选项卡中也是如此

google-app-engine - Google App Engine 上的 EV SSL 证书?

ruby-on-rails - Ruby on Rails I18n 插值

ruby-on-rails - 使用AJAX显示错误消息Ruby on Rails