| |||||||||
Ci sono momenti in cui il toolkit di integrazione (ITK) Data Transfer Tool (DTT) può fallire quando si utilizza l'autenticazione basata su certificato con errori relativi a SSL o errori handshake. Questa soluzione è pensata per le istanze ITK standalone installate su un server, non installate in SAP NetWeaver PI.
Il problema è dovuto in genere a catene di certificati incomplete o a certificati errati utilizzati nel keystore del cliente.
Durante l'eliminazione degli errori, controllare quanto segue:
Assicurarsi che il cliente abbia abilitato l'endpoint nell'applicazione Ariba come metodo di autenticazione del certificato.
(Upstream): Gestisci > Amministrazione > Gestione integrazione > Sicurezza toolkit integrazione
(Downstream): Gestisci > Amministrazione centrale > Gestione integrazione > Sicurezza toolkit integrazione
Se il post HTTPS non riesce, il cliente può abilitare i seguenti parametri nel file toolslib.bat/.sh nella directory bin ITK per stampare le informazioni di debug relative alle informazioni client/server hello e handshake:
a) Passare a <ITK_install_root>/bin
b) Modificare il file toolslib.bat/.sh
c) Impostare i seguenti argomenti e salvare:
Windows: set _command="%JAVA_HOME%\bin\java" -Djavax.net.debug=ssl:handshake:verbose -Dhttps.protocol=TLSv1.1,TLSv1.2 -Djdk.tls.client.protocol="TLSv1.1,TLSv1.2" -jar "%CLASSESDIR%\aribafiletransfer.jar" %args%
Linux/Unix: _command="$JAVA_HOME/bin/java -Djavax.net.debug=\"ssl:handshake:verbose\" -Dhttps.protocol=\"TLSv1.1,TLSv1.2\" -Djdk.tls.client.protocol=\"TLSv1.1,TLSv1.2\" -jar \"$CLASSESDIR/ranils.ranilsfer.aribafjar"
La prossima volta che l'ITK verrà eseguito e tenterà di registrarlo in Ariba, il registro mostrerà le informazioni relative all'handshake/al certificato SSL.
Controllare l'oggetto, l'emittente, le date di validità per i certificati trovati per il keystore del cliente. Queste informazioni devono essere stampate dopo l'inserimento nel registro del toolkit di integrazione in HTTPS pubblicato nell'URL Ariba. Verificare che i certificati trovati corrispondano alle stesse informazioni sul certificato client previste nel keystore.
a) È necessario trovare un certificato valido dal keystore del client.
Esempio:
****Esecuzione dello strumento di trasferimento file a Wed Nov 11 13:22:54 PDT 2020****
registrazione su https://certs1.ariba.com/Buyer/filedownload?realm=abcCompany
***
ha trovato chiave per: <clients_keystore>
b) Verrà avviato *** ClientHello, TLSv1
c) Verrà avviato il *** ServerHello, TLSv1 e la chiave pubblica Ariba (catena di certificati) verrà inviata al cliente
d) Trovare un certificato attendibile
e) Verrà avviato *** ClientKeyExchange, RSA PreMasterSecret, TLSv1 in cui il cliente invia lo scambio di chiavi firmato con la chiave pubblica Ariba
f) Ariba decodifica PreMasterSecret. Questo è il punto in cui, in caso di errore, l'utente potrebbe visualizzare un errore come il seguente. In caso affermativo, il problema potrebbe risiedere nei certificati presenti nel keystore: javax.net.ssl.SSLHandshakeException: Ricevuto avviso fatale: handshake_error
I realm validi sono elencati di seguito.
Acquisti
Contratti strategici
Strategic Sourcing
Supplier Information & Performance Management