3

我写信是想提供一个通过证书身份验证使用活动资源的示例。

http://apidock.com/rails/ActiveResource/Base上的文档没有提供示例。

我有两个需要通信的 Rails 应用程序:APP1 (https://app1.mauroapplications.com)、APP2 (https://app2.mauroapplications.com)

我为每个应用程序(RSA)生成了公钥/私钥。APP2 拥有 APP1 (app1.pem) 的公钥,反之亦然。

在我的开发环境中,我有一个 SSL 的自签名证书。

如何在 APP2 中配置扩展 ActiveResource 的模型?

提前谢谢了,

毛罗

4

1 回答 1

4

以下代码有效:

class Person < ActiveResource::Base
  self.site = 'https://api.people.com:3000/'
  self.ssl_options = {
    cert: OpenSSL::X509::Certificate.new(File.open('cert.pem')),
    key: OpenSSL::PKey::RSA.new(File.open('key.pem')),
    ca_file: 'ca.cert.pem',
    verify_mode: OpenSSL::SSL::VERIFY_PEER
  }
end

cert.pem您的客户端证书、key.pem客户端的私钥和ca.cert.pemCA 证书(用于验证服务器证书)在哪里。

于 2012-07-30T08:08:22.747 回答