ruby-on-rails - 将 RestClient SSL 版本设置为 SSLv3

标签 ruby-on-rails ruby openssl rest-client

有没有办法在单个 RestClient 连接上强制使用 SSL 版本?

我需要将其设置为“SSLv3”。

我可以使用以下方法对所有连接执行此操作:

OpenSSL::SSL::SSLContext::DEFAULT_PARAMS[:ssl_version] = 'SSLv3'

但这当然太全局化了。

当尝试在初始化中传递参数时,它不起作用:

RestClient::Resource.new('https://example.com',:ssl_version => "SSLv3")

最佳答案

您可以使用如下调用:

RestClient::Request.execute(:url => 'https://example.com', :ssl_version => 'SSLv3', :method => 'get')

但请注意,旧版本的 Rest-client 会默默地丢弃 :ssl_version 选项。您可以使用伪造的 SSL 版本来测试是否发生这种情况:

>> RestClient::Request.execute(:url => 'https://example.com', :ssl_version => 'blah', :method => 'get')
ArgumentError: unknown SSL method `blah'.
from /usr/lib/ruby/1.9.1/openssl/ssl-internal.rb:38:in `ssl_version='

关于ruby-on-rails - 将 RestClient SSL 版本设置为 SSLv3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17375066/

相关文章:

javascript - WebSocket onopen - 有时仅发送消息

ssl - OpenSSL 创建的 CSR 和 KEY 如何获取 PFX 文件?

mysql - 我应该将排序键字段与外键结合索引,还是单独索引(mysql)?

ruby-on-rails - 如何有效地测试 stripe 和我的 Controller ?

ruby-on-rails - Ruby 长时间运行的进程对队列事件使用react

ruby - 加密空字符串

javascript - 当实例实际存在时需要创建方法而不是更新方法

ruby-on-rails - RSpec - 测试强参数 ActionController::ParameterMissing

ruby-on-rails - Savon OpenSSL::SSL::SSLError

C OpenSSL block 大小