Interfacciamento con un servizio Web protetto e autenticazione tramite un certificato client. Sono confuso riguardo al passaggio n. 3 nella configurazione del client:
- Genera una chiave privata nel keystore
- Genera un CSR per far firmare la tua chiave pubblica
- Importa il certificato dell'autorità di certificazione nel tuo keystore in modo che sia possibile stabilire una catena di certificati appropriata quando importi il certificato firmato nel passaggio 4.
- Importa il certificato fornito in risposta al CSR
I passaggi 1, 2 e 4 hanno tutti un senso. Il passaggio 3 non ha senso per me. Ho già la mia chiave privata nel keystore e il certificato è una dichiarazione che la terza parte di xyz ha firmato la mia coppia di chiavi. Se ignoro il passaggio tre, viene visualizzato un errore: "errore keytool: java.lang.Exception: impossibile stabilire la catena dalla risposta". Non capisco che cosa convalida / perché è necessaria una tale convalida. Ipoteticamente, se mi capitasse di importare una risposta CSR da qualcuno di cui non mi fido, non sembra che garantisca alcun privilegio / danneggi.
Il certificato importato nel passaggio n. 3 NON è correlato alla catena di certificati utilizzata per convalidare l'identità del server quando il client si connette (il certificato viene importato separatamente nel mio truststore). Per importare la risposta al mio CSR, è necessario il certificato del passaggio 3
Perché è necessario il passaggio 3?