私はリクエストを送信しようとしています:
ActiveXObject("WinHttp.WinHttpRequest.5.1")
ただし、これにはクライアント証明書が必要です (提供されています)。
PHP cURL でテストしたので、次のようにできます。
curl_setopt($SOAP, CURLOPT_SSLCERT,$filepathtocertificate);
これはうまくいきます。ただし、asp(javascript) を実行している IIS を使用し、スクリプトが実行されているマシンの証明書ストアを指す必要があります。
SetClientCertificate("LOCAL_MACHINE\\Personal\\Certificate subject");
実際の展開のために。MS のドキュメント ( http://msdn.microsoft.com/en-us/library/windows/desktop/aa384055(v=vs.85).aspx ) は、上記のパスに証明書の「サブジェクト」を記載する必要があることを示唆しています。 、しかし、証明書にはいくつかのサブジェクトがあり、それらのいくつかまたはすべての組み合わせが結果をもたらさないようであり、リクエストが送信される前に次のエラーが発生します。
WinHttp.WinHttpRequest error '80072f0c'
A certificate is required to complete client authentication
証明書ストアを調べて、同じフォルダー内の他のスクリプトを使用すると、それらは間違いなくそこにあることが示されますが、次のような件名があります。
C=US, O=Organisation NAme, OU="Another Organisation Name, Inc.", CN=Organisation Name Root
または類似。
証明書ストアで証明書を選択して送信するために SetClientCertificate を指定する必要があるパラメーターについてのアドバイスをいただければ幸いです。