3
SOAPとWSDLに基づいたWebサービスを使用する必要があります。 SOAP(https)は、認証にログイン、パスワード、証明書を使用します。 PHPの例:SOAPと証明書の承認
<?
...
$client->authtype = 'certificate';
$client->decode_utf8 = 0;
$client->soap_defencoding = 'UTF-8';
$client->certRequest['sslcertfile'] = 'path_to_cert.crt';
$client->certRequest['sslkeyfile'] = 'path_to_private.key';
$client->certRequest['cainfofile'] = 'path_to_cacert.pem';
$client->call("method");
...
?>
これをC#でどうやって行うことができますか?私はVS2008でサービス参照を追加し、これを試してみてください。
var ya = new YAPI.APIPortClient();
ya.Open();
ya.PingAPI();
キャッチ例外:
は 権限 'サービスURL' がSSL/TLSのセキュリティで保護されたチャネルの信頼関係 を確立できませんでした。
var ya = new YAPI.APIPortClient(); ya.ClientCredentials.UserName.UserName = "login"; ya.ClientCredentials.UserName.Password = "pass"; ya.ClientCredentials.ClientCertificate.Certificate = new X509Certificate2(@"path_to_cert.crt"); ya.Open(); ya.PingAPI();
をし、同じ例外をキャッチ:
これを試してみてください。承認に合格するために私は何をする必要がありますか?答えをありがとう。申し訳ありませんが悪い英語:)
私はcert.crtを持っていますが、秘密鍵は含まれていません。また、私はファイルprivate.keyを持っています。私はそれを使用する必要がありますか?はいの場合 - どのように? –
秘密鍵と証明書を組み合わせる方法の1つは、openssl pkcs12コマンドです。http://www.openssl.org/docs/apps/pkcs12.html –