| |||||||||
Es gibt Zeiten, in denen das Integration Toolkit (ITK) Data Transfer Tool (DTT) fehlschlagen kann, wenn die zertifikatsbasierte Authentifizierung mit Fehlern bezüglich SSL oder Handshake-Fehlern verwendet wird. Diese Lösung ist für eigenständige ITK-Instanzen gedacht, die auf einem Server installiert sind, nicht auf SAP NetWeaver PI.
Das Problem wird in der Regel dadurch verursacht, dass unvollständige Zertifikatsketten oder falsche Zertifikate im Keystore des Kunden verwendet werden.
Prüfen Sie bei der Fehlerbehebung Folgendes:
Stellen Sie sicher, dass der Kunde den Endpunkt in der Ariba-Anwendung als Authentifizierungsmethode Zertifikat aktiviert hat.
(Upstream): Verwalten > Administration > Integrations-Manager > Integrations-Toolkit-Sicherheit
(Downstream): Verwalten > Ariba Administrator > Integrations-Manager > Integrations-Toolkit-Sicherheit
Wenn der HTTPS-Post fehlschlägt, kann der Kunde die folgenden Parameter in der Datei toolslib.bat/.sh im ITK-bin-Verzeichnis aktivieren, um Debug-Informationen bezüglich der Client-/Server-Hallo und Handshake-Informationen zu drucken:
a) Navigieren Sie zu <ITK_install_root>/bin.
b) Bearbeiten Sie die Datei toolslib.bat/.sh.
c) Legen Sie die folgenden Argumente fest, und sichern Sie:
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%\afaribiletransfer.jar"
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,TLSvfer1.2\" -jar \"$CLASils.client.protocols=\"TLSv1.1,.jfer1.2\" -jar \"$CLASils.SEilcols"
Wenn das ITK das nächste Mal ausgeführt wird und versucht, an Ariba zu senden, zeigt das Protokoll die SSL-Handshake-/Zertifikatsinformationen an.
Prüfen Sie Inhaber, Aussteller und Gültigkeitsdaten für die Zertifikate, die für den Keystore des Kunden gefunden wurden. Diese Informationen sollten nach dem Eintrag im ITK-Protokoll zum HTTPS-Post an die Ariba-URL gedruckt werden. Prüfen Sie, ob die gefundenen Zertifikate mit denselben Client-Zertifikatsinformationen übereinstimmen, die sie im Keystore erwarten.
a) Im Keystore des Clients sollte ein gültiges Zertifikat gefunden werden.
Beispiel:
****Ausführen des Dateiübertragungstools am Mittwoch, 11. Nov. 13:22:54 PDT 2020****
Buchung auf https://certs1.ariba.com/Buyer/filedownload?realm=abcCompany
***
Schlüssel gefunden für : <clients_keystore>
b) Der *** ClientHello, TLSv1 wird initiiert.
c) Der *** ServerHello, TLSv1 wird initiiert, und der öffentliche Ariba-Schlüssel (Zertifikatskette) wird an den Client gesendet.
d) Es sollte ein vertrauenswürdiges Zertifikat gefunden werden.
e) Der *** ClientKeyExchange, RSA PreMasterSecret, TLSv1 wird initiiert, wenn der Client den mit dem öffentlichen Ariba-Schlüssel signierten Schlüsselaustausch sendet.
f) Ariba entschlüsselt das PreMasterSecret. Dies ist der Punkt, an dem der Benutzer beim Auftreten eines Fehlers einen Fehler wie den folgenden sehen kann. Wenn dies der Fall ist, kann das Problem bei den Zertifikaten im Keystore liegen: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
Die gültigen Bereiche sind unten aufgeführt.
SAP Ariba Buying and Invoicing
SAP Ariba Buying
SAP Ariba Contracts
SAP Ariba SIPM
SAP Ariba Sourcing