最初に少し背景情報。 Windows Server 2003 SP2 32ビット環境内で実行されるSSISパッケージがあります。 SSL接続を使用してWebページをダウンロードするスクリプトタスク中に、パッケージが次のエラーで失敗し始めました。
"The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.
いくつかの掘り下げにより、いくつかのことが明らかになりました。サーバーからIE8を使用して問題のWebサイトにアクセスできず(Firefoxで可能です)、Webサイトに新しいSHA256証明書が発行されました。
いくつかの調査を行った後、私の現在の想定では、問題はこのサーバーでSHA2証明書をサポートしていないことです。私はサイトから証明書を取得して実行しましたCertUtil -verify [cert file]
これにより、次の結果が得られます。
The signature of the certificate can not be verified. 0x80096004 (-2146869244)
私はマイクロソフトからいくつかのホットフィックスを見つけました、そして私が理解しているところによると、どちらもSHA2証明書のサポートを有効にするはずです:
そのため、kb968730の修正プログラムを要求してインストールしようとしましたが、次のエラーが発生しました。
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
修正プログラムに含まれているcrypt32ライブラリのバージョンは5.131.3790.4477であり、インストーラーが続行しない理由を説明しています。
この時点では、何をする必要があるのかよくわかりません。 kb968730の記事は、crypt32.dllがホットフィックスによって更新される唯一のファイルであることを示しています。これにより、新しいバージョンをすでに持っているので、この機能をすでに持っているべきではないのですか?しかし、問題の根本的な原因について誤解しない限り、私はそうではないように思えます。
Crypt32.dll 5.131.3790.5235バージョンでは、問題が修正されています(再起動後)。 http://support2.Microsoft.com/kb/2868626 から入手できます。
以前にインストールされたバージョンは5.131.3790.5014バージョンであり、問題は修正されませんでした。この投稿によると( https://mendel129.wordpress.com/tag/crypt32-dll/ )、5014バージョンには2つのバリアントがあります。1つはWindows Updateからのもの(KB2661254、機能しません)もう1つはQFE(KB968730)です。
この問題は、Windows Updateを有効にすると自動的にインストールされる KB30726 をインストールすることで解決します。更新後のCrypt32.dllのバージョン番号は5.131.3790.5668です。
KB938397およびKB968730は非推奨になり、上記のアップデートに置き換えられました。
このエラーも受け取りました。私は先に進み、指定されたサーバーに証明書をインストールし、このエラーを取得します。私の解決策は、先に進んで、その特定の証明書を呼び出す各サーバーにルート/中間証明書をインストールする必要があることでした。これはおそらく、内部CAを更新したばかりであったためです。
そのため、その証明書を呼び出すサーバーがX個ある場合は、それらのサーバーにインストールします。これで私の問題は解決しました。