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

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

解答

Ariba Web サービスへの受信:

  1. キーストアは、PEM (Privacy Enhanced Mail) base64 エンコーディングを使用してエンコードされた X.509 証明書とともに使用します。有効な認証機関のものがない場合は、以下の手順を実行して、自己署名キーストア/証明書を生成することができます。
    1. コマンドプロンプトを開き、ディレクトリをマシンの Java インストール 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 証明書をペーストし、証明書ファイルにペーストして変更を保存します。証明書の最初の行は、以下のテキストである必要があります。
    -----BEGIN CERTIFICATE-----
    証明書の最後の行は、以下のテキストである必要があります。
    -----END CERTIFICATE-----

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

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

  1. 送信 WS セキュリティ設定タブをクリックし、追加アイコン (+ 記号のようなアイコン) をクリックします。
  2. 下のペインにある追加アイコンをクリックして、セキュリティのタイプを追加します。"署名" を選択します。
  3. ドロップダウンからキーストアとエイリアスを選択し、キーストアパスワードを入力します。キー ID タイプを "発行者名およびシリアル番号" にします。構成すると、構成は以下のようになります。

  1. 以下のように SoapUI でダブルクリックして依頼を開きます。

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

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

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

  1. 手順 1 が「Ariba Web サービスへの受信」手順から完了していることを確認します。
  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 で、新しい SoapUI プロジェクトを作成し、Ariba からコピーした WSDL URL を使用します。
  7. Create MockService がチェックされていることを確認します。
  8. 次の画面で、ポートおよびパスに関するデータを入力します。
  9. 登録したプロジェクトをダブルクリックします。
  10. Keystores タブをクリックし、Add アイコン (+ 記号のようなアイコン) をクリックします。
  11. Ariba Web サービスへの受信の手順 1 で作成したキーストアファイル (ファイル拡張子 .jks) を選択し、キーストアパスワードを入力します。これを行うと、キーストアのステータスが OK になります。
  12. 受信 WS セキュリティ設定タブをクリックし、追加アイコン (+ 記号のようなアイコン) をクリックします。
  13. エントリに名前を指定し、"キーストア解読" および "署名キーストア" のキーストア値を選択し、キーストアパスワードを入力します。
  14. SOAP プロジェクト内で MockService をクリックします。
  15. モックサービスプロパティで、"受信 WSS" を、ステップ 13 で設定された "受信 WS セキュリティ設定" の名称に設定します。
  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  |  セキュリティに関する情報  |  情報の保護