Prima alcune informazioni di base. Ho un pacchetto SSIS che funziona all'interno di un ambiente a 32 bit di Windows Server 2003 SP2. Di recente il pacchetto ha iniziato a fallire con il seguente errore durante un'attività di script che scarica una pagina Web utilizzando una connessione SSL:
"The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.
Alcuni scavi hanno rivelato un paio di cose: anche io non sono riuscito ad accedere al sito Web in questione utilizzando IE8 dal server (posso farlo con Firefox) e al sito Web è stato appena emesso un nuovo certificato SHA256.
Dopo aver fatto qualche ricerca, la mia ipotesi attuale è che il problema è che non ho supporto per i certificati SHA2 su questo server. Ho preso il certificato dal sito ed eseguito CertUtil -verify [cert file]
che dà il seguente risultato:
The signature of the certificate can not be verified. 0x80096004 (-2146869244)
Ho trovato un paio di hotfix di Microsoft e, da quello che ho capito, uno dei due dovrebbe abilitare il supporto per i certificati SHA2:
Quindi ho richiesto l'aggiornamento rapido per kb968730 e ho tentato di installarlo, ma ho ottenuto il seguente errore:
The installation cannot continue because the following packages might not be valid:
KB2616676_V2 c:\windows\system32\dllcache\crypt32.dll 5.131.3790.4905
KB2616676_V2 c:\windows\system32\crypt32.dll 5.131.3790.4905
Reinstall the packages listed above, and then reinstall KB968730
La versione della libreria crypt32 inclusa con l'aggiornamento rapido è 5.131.3790.4477 che spiega perché il programma di installazione non procederà.
A questo punto non sono del tutto sicuro di cosa devo fare. L'articolo kb968730 indica che crypt32.dll è l'unico file aggiornato dall'aggiornamento rapido che mi fa pensare, poiché ho già una versione più recente, non dovrei già avere questa funzionalità? Ma sembrerebbe di no, a meno che non mi sbagli sulla causa principale del problema.