| |||||||||
SSL またはハンドシェイクエラーに関するエラーがある証明書ベースの認証の使用時に、統合ツールキット (ITK) データ転送ツール (DTT) が失敗することがあります。この解決方法は、SAP NetWeaver PI にインストールされていないサーバにインストールされたスタンドアロン ITK インスタンスを対象としています。
この問題は、通常、カスタマのキーストアで証明書チェーンが不完全であるか、不適切な証明書が使用されていることが原因です。
トラブルシューティングを行う場合は、以下を確認してください。
顧客が Ariba アプリケーションでエンドポイントを証明書の認証方法として有効化していることを確認します。
(アップストリーム): 管理 > 管理 > 統合マネージャ > 統合ツールキットのセキュリティ
(ダウンストリーム): [管理] > [コアシステム管理] > [統合マネージャ] > [統合ツールキットのセキュリティ]
HTTPS Post が失敗した場合、カスタマは ITK bin ディレクトリの toolslib.bat/.sh ファイルで以下のパラメータを有効化して、クライアント/サーバの hello およびハンドシェイク情報に関するデバッグ情報を印刷することができます。
a) <ITK_install_root>/bin に移動します。
b) toolslib.bat/.sh ファイルを編集します。
c) 以下の引数を設定して保存します。
Windows: set _command="%JAVA_HOME%\bin\java" -Djavax.net.debug=ssl:handshake:verbose -Dhttps.protocols=TLSv1.1,TLSv1.2 -Djdk.tls.client.protocols="TLSv1.1,TLSv1.2" -jar "%CLASSESDIR%\aribafiletransfer.jar" %args%
Linux/Unix: _command="$JAVA_HOME/bin/java -Djavax.net.debug=\"ssl:handshake:verbose\" -Dhttps.protocols=\"TLSv1.1,TLSv1.2\" -Djdk.tls.client.protocols=\"TLSv1.1,TLSv1.2\" -jar \"$CLASSESDIR/aribafiletransfer.jar\" $_args"
ITK が次回実行され、Ariba への送信が試行されると、ログに SSL ハンドシェイク/証明書情報が表示されます。
顧客のキーストアで見つかった証明書のサブジェクト、発行者、有効日付を確認します。この情報は、ITK ログのエントリの後に印刷して、HTTPS で Ariba URL に送信する必要があります。見つかった証明書が、キーストアに存在することが想定されているのと同じクライアント証明書情報と一致していることを確認します。
a) 有効な証明書がクライアントのキーストアから見つかる必要があります。
たとえば、
****Wed Nov 11 13:22:54 PDT 2020 でのファイル転送ツールの実行****
https://certs1.ariba.com/Buyer/filedownload? への投稿realm=abcCompany
***
のキーが見つかりました: <clients_keystore>
b) *** ClientHello, TLSv1 が開始されます。
c) *** ServerHello, TLSv1 が開始され、Ariba の公開鍵 (証明書チェーン) がクライアントに送信されます。
d) 信頼された証明書が見つかります。
e) *** ClientKeyExchange、RSA PreMasterSecret、TLSv1 が開始され、クライアントは Ariba 公開鍵で署名された鍵交換を送信します。
f) PreMasterSecret が復号化されます。 これは、エラーが発生した場合に以下のようなエラーが表示される可能性があるポイントです。その場合、キーストア内の証明書に問題がある可能性があります: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
有効なレルムは以下のとおりです。
SAP Ariba Buying and Invoicing
SAP Ariba Buying
SAP Ariba Contracts
SAP Ariba SIPM
SAP Ariba Sourcing