0

curl コマンドの使い方について質問があります。したがって、基本的には、ssl をサポートするいくつかのサードパーティ サービスを利用しようとしています。2 つの異なるベンダーがあります

  1. あるベンダーは、クライアント認証を必要とする ssl でサービスを構成しました。2 つのキーがあり、1 つは私たちの公開キーを持つ秘密キーです。公開キーを彼らに渡し、証明書付きの公開キーを取得しました。そのために、curl を備えた UNIX クライアントがあり、次の .pem ファイルを生成しました。コマンド「cat server.crt serverpublickey.key > server.pem」を実行し、curl コマンドを使用してサービスを呼び出しました。正常に動作しました。このベンダーのケースでは、ブラウザから wsdl を取得することはありませんでした。以前は、クライアント認証が必要であることを示していました。

  2. サービスがsslで構成されているが、クライアント認証で構成されていない別のベンダーがあります。そのため、以前は証明書を受け入れるように求めていたブラウザーのwsdlリンクにアクセスでき、ブラウザーで証明書を受け入れました。 wsdl ファイルを表示できます。技術的には、https:// で任意のサイトにアクセスすると、公開証明書と公開鍵が送信されます。そのため、ブラウザはキーを使用してデータを暗号化し、サーバーに送り返します。サーバーからデータを取得すると、ブラウザの復号化がパブリックで行われます。鍵。問題は、このサービスを curl から呼び出す方法です。私たちが公開鍵を送信するすべてのリクエストに対して、以前のベンダーが私たちの側からのものであることを彼らに知らせることができると思います。他のベンダーの場合、認証サービスがあります。認証に成功すると、それぞれの呼び出しに使用する必要があるセッション ID が送られてきます。これが、ssl を使用したクライアント認証構成がなかったと私が推測する理由です。これまた私の推測ですが…

「私の質問は、ブラウザで取得した証明書しか持っていない 2 番目のベンダーです。証明書を使用して curl コマンドを呼び出し、サードパーティのサービスを呼び出す方法を教えてください」

いくつかの概念が間違っている可能性があります。私の理解に対する答えも評価できます

4

0 に答える 0