よくある質問 KB0394293
電子メール
SoapUI を使用して Web サービスの証明書ベースの認証 (WS-Security) を設定するステップ
このナレッジベース記事は、お客様の利便性のために機械翻訳されています。SAP は、この機械翻訳の正確性または完全性に関して、いかなる保証も行うものではありません。言語選択で英語に切り替えると、元のコンテンツを確認できます。
質問

Web サービスの証明書ベースの認証 (WS-Security) を設定するステップ

解答

Ariba Web サービスへの受信:

  1. キーストアと、Privacy Enhanced Mail (PEM) base64 エンコーディングを使用してエンコードされた X.509 証明書を使用します。有効な認証局の証明書がない場合は、以下を実行して自己署名キーストア/証明書を生成することができます。
    1. コマンドプロンプトを開き、ディレクトリをマシンの Java install bin ディレクトリに変更します。
    2. 次のコマンドを実行して、キーストアを生成します (Windows の場合)。 - パスワードを、使用する実際のパスワードに置き換えます。

keytool -genkey -keyalg RSA -alias selfsigned -keystore keystore.jks -storepass password -validity 360 -keysize 2048

    1. ステップ 1b で keystore.jks という名前のキーストアファイルが作成されました。これは、新しい証明書、公開鍵、および秘密鍵を含む Java キーストアです。
    2. エンドポイント認証のために Ariba UI に実装できる PEM 証明書をキーストアから抽出します。コマンドプロンプトから、次のコマンドを実行します (パスワードをステップ 1b で設定した実際のパスワードに置き換えます)。

keytool -exportcert -alias selfsigned -keypass password -keystore keystore.jks -storepass password -rfc -file keytool_crt.pem

  1. このソリューションのために、SoapUI での要求の設定について言及します。Ariba システムで、[管理] > [システム管理/コアシステム管理] > [統合マネージャ] > [エンドポイント設定] > [新規] に移動します。
  2. ステップ 1d で抽出した Privacy Enhanced Mail (PEM) base64 エンコーディングを使用してエンコードされた X.509 証明書を証明書ファイルにペーストし、変更を保存します。証明書の最初の行は、以下のテキストにする必要があります。
    -----証明書開始-----
    証明書の最後の行は、以下のテキストである必要があります。
    -----証明書終了-----

  1. [管理] > [システム管理/コアシステム管理] > [統合マネージャ] > [統合設定] に移動し、目的の Web サービスを選択して編集し、有効化されていることを確認し、手順 3 で作成したエンドポイントを使用します。
  2. WSDL URL のコピー
  3. SoapUI で、Ariba からコピーされた WSDL URL を使用して、新しい SoapUI プロジェクトを作成します。
  4. プロジェクトをダブルクリックします。

  1. Keystores タブをクリックし、Add アイコン (+ 記号のようなアイコン) をクリックします。
  2. ステップ 1 で作成したキーストアファイル (.jks ファイル拡張子) を選択し、キーストアパスワードを入力します。これを行うと、キーストアのステータスは OK になります。

  1. [送信 WS セキュリティ設定] タブをクリックし、[追加] アイコン (+ 記号のようなアイコン) をクリックします。
  2. 下のペインで追加アイコンをクリックして、セキュリティのタイプを追加します。"署名" を選択します。
  3. ドロップダウンからキーストアとエイリアスを選択し、キーストアのパスワードを入力します。Key Identifier Type = "Issuer Name and Serial Number" にします。設定が完了すると、設定は以下のようになります。

  1. 要求を SoapUI でダブルクリックして開きます。

  1. 申請で、[Aut] タブをクリックします。送信 WSS を、ステップ 10 ~ 12 で登録した "送信 WS セキュリティ設定" の名称に設定します。

  1. これで、SoapUI からの要求を実行できます。正常な応答が表示されます。

Ariba Web サービスからミドルウェアへの送信:

  1. 「Ariba Web サービスへの受信」の手順から手順 1 が完了していることを確認します。
  2. Ariba システムで、[管理] > [システム管理/コアシステム管理] > [統合マネージャ] > [エンドポイント設定] > [新規] に移動し、[種類] として [送信] を選択します。
    "URL" にはエンドポイントを指定します。これは、Ariba が SOAP 要求を送信する場所になります。Ariba では https の使用を推奨していますが、http も機能します。

    たとえば、
    https://<domain>:<port>/WSOutbound

  3. [Ariba 秘密鍵で署名] を [はい] に設定し、エンドポイントを保存します。
  4. [管理] > [システム管理/コアシステム管理] > [統合マネージャ] > [統合設定] に移動し、目的の Web サービスを選択して編集し、有効化されていることを確認し、手順 2 で作成したエンドポイントを使用します。また、URL を設定します (エンドポイント URL と同じ URL である必要がありますが、URL に追加パラメータを含めることができます)。
  5. WSDL URL を開き、ブラウザで URL をコピーします。
  6. SoapUI で、Ariba からコピーされた WSDL URL を使用して、新しい SoapUI プロジェクトを作成します。
  7. MockService の作成がチェックされていることを確認します。
  8. 次の画面で、ポートおよびパスに関するデータを入力します。
  9. 登録したプロジェクトをダブルクリックします。
  10. Keystores タブをクリックし、Add アイコン (+ 記号のようなアイコン) をクリックします。
  11. Ariba Web サービスへの受信のステップ 1 で作成したキーストアファイル (.jks ファイル拡張子) を選択し、キーストアパスワードを入力します。これを行うと、キーストアのステータスは OK になります。
  12. [受信 WS セキュリティ設定] タブをクリックし、[追加] アイコン (+ 記号のようなアイコン) をクリックします。
  13. このエントリに Name を指定し、"Decrypt Keystore" および "Signature Keystore" のキーストア値を選択して、キーストアパスワードを入力します。
  14. SOAP プロジェクト内の MockService をクリックします。
  15. MockService Properties で、"Incoming WSS" を、ステップ 13 で設定した "Incoming WS-Security Configurations" の名前に設定します。
  16. 応答をダブルクリックし、応答が目的の結果 (成功またはエラー) を満たすように値をマニュアルで入力します。これは、要求が SoapUI に入ったときに Ariba に送信される応答です。
  17. これで、目的の Web サービスを使用して SoapUI にデータを送信する Ariba アプリケーションでデータを生成できるようになりました。
追加情報

上記のステップを使用したキーストアの生成の詳細については、以下を参照してください。

http://www.john-james-andersen.com/blog/service-now/tutorial-soap-into-servicenow-via-x509-ws-security.html

特に SoapUI での WS-Security の設定の詳細については、以下を参照してください。

http://www.soapui.org/SOAP-and-WSDL/applying-ws-security.html

SoapUI.txt を使用して Web サービスの証明書ベース認証 (WS-Security) を設定するステップ6.75 KB

該当項目

Strategic Sourcing
Supplier Information & Performance Management
戦略的契約
購入

使用条件  |  Copyright  |  セキュリティに関する情報  |  情報の保護