0

私は現在、レガシー .NET ソリューション (スタンドアロンの Win32 アプリ) を置き換えるために、Rails で新しい Web ベースのシステムを構築中です。このシステムにより、アナリストは多くのアクションを実行できます。多くの場合、ユーザーの要求は、実際にはサードパーティの Web サービスへの呼び出しによって処理されます。Web サービスは、サードパーティが発行した X.509 証明書を使用して保護されています。呼び出しを行う .NET コードは次のとおりです。

(Visual Studio では、対応する URL で「ProductionServices」という Web/サービス参照を宣言しました)

X509Certificate2 c = new X509Certificate2("filepath", "password");
using (ProductionServices.Items items = new ProductionServices.Items())
{
  try
  {
   //specify client certificate if needed
   if (c != null)
   items.ClientCertificates.Add(c);

   XmlNode node = null;

   node = items.getItemList();

   XmlDocument xd = new XmlDocument();
   xd.AppendChild(xd.ImportNode(node, true));

   .......

}

この時点で、Rails アプリは見栄えがよく洗練されたものになっています。ただし、上記の .NET ロジックを Rails でレプリケートする必要があるため、その Web サービス データをビューに取り込むこともできます。これを行う方法の非常に基本的な例を見つけましたが、クライアント証明書を使用した良い例はありません。誰かが私を正しい方向に向けることができますか?

どんな助けでも大歓迎です。

ありがとう。

4

1 に答える 1

0

Net::HTTP を使用していると仮定して、ここを見てください。

http://www.rubyinside.com/nethttp-cheat-sheet-2940.html

ページの半分ほど下に、「PEM 証明書を使用した SSL/HTTPS リクエスト」というタイトルの例があります。

問題のライブラリに依存する Net::HTTP (HTTParty、Typhoeus など) の周りにある種のラッパーを使用している場合。そうですか?

于 2012-10-10T00:41:07.933 に答える