2010-09-29 44 views
6

我需要在Ruby 1.8+中创建SSLSocket才能与加密服务通信。我想在SSLContext对象上设置SSL选项(它最终在基础OpenSSL库中调用SSL_CTX_set_options)。我没有看到任何明显的方式来做到这一点。如何在Ruby中设置SSLContext选项

这是使用OpenSSL::SSL::SSLContext接口。

作为参考点,这类似于在Python的pyOpenSSL库中调用set_options()

回答

3

实施例:

ctx = OpenSSL::SSL::SSLContext.new 

ctx.set_params(:options => OpenSSL::SSL::OP_EPHEMERAL_RSA | OpenSSL::SSL::OP_NO_SSLv2) 
# or 
ctx.options = OpenSSL::SSL::OP_EPHEMERAL_RSA | OpenSSL::SSL::OP_NO_SSLv2 
+0

尼斯例子。它击败了Ruby文档提供的内容。当'http.use_ssl = true'时,如何将上下文附加到'http'? – jww 2014-06-16 08:43:33

+0

@jww:似乎还没有API:https://bugs.ruby-lang.org/issues/9450 *叹* – qerub 2014-06-16 12:15:42

相关问题