最終更新日: 2021 年 6 月 22 日
公開日: 2021 年 4 月 26 日
Microsoft が .NET Framework 4.5.2、4.6、4.6.1 のサポートを終了するのはなぜですか?
.NET Frameworkは、セキュリティで保護されたハッシュ アルゴリズム (SHA-1) を使用する証明書を使用して、以前にデジタル署名されていました。 SHA1- は、セキュリティで保護されていない従来の暗号化ハッシュ アルゴリズムです。 進化する業界標準をサポートするために SHA1 を使用したデジタル証明書を使用して署名されたコンテンツは廃止されます。
さまざまなバージョンの.NET Frameworkのダウンロードと使用状況のデータを調べた結果、新しいデジタル証明書 (インストーラー用) をサポートするように .NET Framework 4.6.2 以降のバージョンを更新すると、ユーザーの大部分 (98%) が満たされ、変更を加える必要がないことがわかりました。 .NET Framework 4.5.2、4.6、または 4.6.1 を使用する小規模なユーザーセットは、サポートを維持するために、後の.NET Framework バージョンにアップグレードする必要があります。 アプリケーションを再コンパイルする必要はありません。 この変更の性質を踏まえると、.NET Framework 4.6.2 以降をターゲットにするのが、サポートと労力の最適なバランスであると判断しました。
詳細については、 SHA-1 コンテンツの廃止 に関するこのサポート記事を参照してください。
これらのバージョンがインストールされているかどうかを知操作方法?
インストールされている.NET Frameworkバージョンの決定に関する記事を参照してください。
私はまだこれらのバージョンを使用しています、私は何をしますか?
.NET Framework 4.5.2、4.6、または 4.6.1 を使用している場合は、より新しいランタイム バージョン (少なくとも 4.6.2 .NET Framework、できれば 4.8 .NET Framework) に移行する必要があります。 アプリを実行する上で、デプロイされたランタイムのみを更新する必要があることに注意してください。 新しいバージョンを再ターゲットするためにアプリを再構築することは期待できません。
アプリをAzure App Serviceにデプロイします。何かする必要がありますか?
.NET Framework 4.8 は既にAzure App Serviceにデプロイされているため、Azure App Serviceで Web アプリまたは Azure 関数を実行している場合は、実行する必要がない場合は、既に最新の 4.8 バージョンを使用しています。
Azure で仮想マシンを使用する場合、何かする必要がありますか?
パートナー チームと協力して、少なくとも 4.6.2 に付属していない OS ファミリのゲスト VM イメージがこれを含むように更新され、4.5.2、4.6、および 4.6.1 のサポートを停止する 2022 年 4 月より前に利用可能になると予想されています。 2022 年 4 月より前は、引き続き .NET Framework 4.5.2、4.6、4.6.1 を使用できます。完全にサポートされます。 つまり、新しいランタイム バージョンでアプリケーション機能の検証をすぐに開始する場合は、このガイダンスを使用して Azure Cloud Servicesに.NET Frameworkをインストールできます。
アプリが、Windows Server Update Services (WSUS) または System Center Configuration Manager (SCCM) を使用して管理されているエンタープライズ環境内に展開されている場合、何を行う必要がありますか?
最新の.NET Framework ランタイム – 4.8 は、クライアント オペレーティング システム用のWindows Update、Windows Server Update Services (WSUS)、Microsoft Update (MU) カタログ、および WSUS および MU Catalog for Server オペレーティング システムで使用できます。
これに役立つリソースは何ですか?
役に立つリソースを次に示します。
Windows Embedded 8 では、.NET Framework 4.5.2、4.6、または 4.6.1 がサポートされますか?
.NET Framework 4.5.2、4.6、および 4.6.1 は、Windows Embedded 8 でこれを使用するお客様を含め、2022 年 4 月 26 日にサポートが終了します。 これらの.NET Frameworkバージョンを使用しているお客様は、少なくとも 4.6.2 .NET Framework、できれば 4.8 .NET Framework、より新しいランタイム バージョンに移行することを計画する必要があります。
Windows Server 2008 では、.NET Framework 4.5.2、4.6、または 4.6.1 を使用します。 どうすればよいですか?
以前.NET Framework 4.6.1 以前のバージョンでは 2008 Windows Serverがサポートされましたが、.NET Framework 4.6.2 以降のバージョンはサポートされていませんでした。 サポート更新プログラムのこの終了の一環として.NET Framework 4.6.2 は、サポートされているプラットフォームとして Windows Server 2008 を含むように更新されました。 Windows Server 2008 で .NET Framework 4.5.2、4.6、または 4.6.1 を使用しているお客様は、.NET Framework 4.6.2 に移行する予定です。
注: .NET Framework 4.7 以降の新しいバージョンでは、Windows Server 2008 はサポートされていません。
私は.NET Framework 4.6で出荷されたWindows 10 2015 LTSCを使用しています。 どうすればよいですか?
WINDOWS 10 ENTERPRISE LTSC 2015 は、OS に組み込まれた.NET Framework 4.6 で出荷されています。 この OS バージョンは、長期サービス チャネル (LTSC) リリースです。 Windows 10 Enterprise LTSC 2015 の .NET Framework 4.6 のサポートは、OS バージョンのサポートが終了する (2025 年 10 月) まで継続されます。
.NET Framework 4.5.2 に重大な変更はありますか。 これらの変更を含めるのはなぜですか。
.NET Framework 4.5.2 には、以前のバージョンと完全に互換性のない変更が非常に少ない.NET Frameworkがあります。 これらのランタイム変更を呼び出します。 これらの変更は、セキュリティの利益のために、業界標準に準拠するために、または以前の非互換性を修正するために、.NET Framework内で絶対に必要な場合にのみ含まれます。 さらに、.NET Framework 4.5.2 に含まれる変更の数は少なく、.NET Framework 4.5.2 に対してアプリケーションを再コンパイルする場合にのみ有効になります。これらの変更は、再ターゲット変更と呼びます。
.NET Framework 4.x ファミリのさまざまなバージョンでの .NET ランタイムと再ターゲットの変更の両方を含む、アプリケーションの互換性の詳細については、こちらを参照してください。
.NET Framework 4.6.2 以降のバージョンを使用するには、アプリケーションを再コンパイルまたは再構築する必要がありますか?
.NET Framework 4.6.2 以降のバージョンは、4.5.2、4.6、4.6.1 を含む以前の .NET Framework 4.x バージョンと互換性のあるインプレース更新プログラムです。 つまり、以前のバージョン.NET Framework 4.x バージョンでビルドされたアプリケーションは、.NET Framework 4.6.2 以降のバージョンで引き続き実行され、変更は行われません。 これらのバージョンを対象とするアプリの再コンパイルは必要ありません。ランタイム バージョンを更新するだけで済みます。 運用環境にデプロイする前に、新しい.NET Frameworkランタイム バージョンでアプリケーション機能をテストすることをお勧めします。
ClickOnce または Visual Studio Installer プロジェクトを使用して、アプリの前提条件として .NET Framework 4.6.2 以降をデプロイする場合は、どうすればよいですか?
.NET Framework 4.6.2 以降のインストーラーは再構築されているため、ブートストラップを使用してアプリの前提条件として.NET Framework 4.6.2 以降をデプロイする場合は、更新された .NET インストーラー パッケージを ClickOnce ブートストラップが適切に検出するために、Product.xml および Package.xml ファイルの PublicKey 属性を更新する必要があります。
Product.xml は英語の製品に使用され、ブートストラップ リリースのルートに存在します。 たとえば、.NET Framework 4.6.2 の場合、このファイルは %ProgramFiles(x86)%\Microsoft SDK\ClickOnce Bootstrapper\Packages\DotNetFX462\ の下にあります。
また、ロケール固有のフォルダーの下に複数の Package.xml ファイルがあります。これらは、アプリケーション.NET Framework言語パックを展開するために使用されます。
Package/PackageFiles/PackageFile 要素の PublicKey 属性の値を次の値に更新する必要があります。
3082010a0282010100b6bb19591000a3a9f1e4b85ca80b07cbdb9a1f23d0d958ab78c048f7241438f063edd54b03bfcdf809ca1450f327b3fe82b4fa1a4384e1cbf91b38e83fcc9027ac97a2310a917b62ec75bfcd488da05d75fd95a775ff23d40ce5e8e063703e35ead49662f87655f756d4afa663cde3e3d60f9b7a9b2a77f1c2d5749c8f47d3dda0312d1ca4252cc4c4406653d792cae3b052eabe0ab8ae750b5618c74953ae74bff2a6cdf338e98ea5a3f3029e7a6fcf7cc42fb3cc754770aa3fe7621186dd45482f15fbb4074c6f3ecb37ee96388a53d40e35af06a83959effbc51af781f0863666bb54bbdf2795ed1659371a2111e8098bd618b2c5daed465452408203e2a70203010001
Product.xml には //Package/PackageFiles/PackageFile 要素のインスタンスが 2 つあり、各 Package.xml ファイルに 1 つのインスタンスがあることに注意してください。 すべてのインスタンスを正しい PublicKey で更新する必要があります。詳細については、 ブートストラップ パッケージの作成 に関する記事を参照してください。
WiX ブートストラップ (書き込み) などの別のブートストラップを使用する場合、詳細については、.NET Framework前提条件をインストールするための書き込みドキュメントを参照してください。
.NET Framework 3.5 SP1 を使用します。これを引き続き使用できますか?
.NET Framework 3.5 SP1 のサポート ライフサイクルに変更はありません。 .NET Framework 3.5 のサポート情報の特定の終了については、このサイトを参照してください。
アプリケーションは、今後サポートされない.NET Frameworkインストーラー バージョンを再配布します。 どうすればよいですか?
サポートされている .NET ランタイム インストーラー (4.6.2 以降) を、アプリの次に計画された更新プログラムと共に配布することを計画する必要があります。 アプリケーションがWindows Updateから更新プログラムを受け取る環境にある場合、.NET Framework 4.8 がWindows Updateを介して広く展開されているため、ほとんどの場合、コンピューターは .NET Framework 4.8 でアプリを既に実行しています。 Windows Updateがブロックまたは利用できない環境でアプリを使用している場合、アプリのインストーラーでこれを行わない場合は、アプリのエンド ユーザーが .NET Framework 4.6.2 以降を自分でデプロイする必要がある場合があります。
.NET Frameworkに依存するExchange Server、SQL Server、Sharepoint などの Microsoft 製品を使用しています。 これらの製品を更新する必要がありますか?
Exchange、SQL Server、SharePoint などの新しいバージョンの製品は、.NET Framework 4.6.2 以降に基づいています。 .NET Framework 4.6.2 以降のバージョンは、以前の .NET Framework 4.x バージョンに加え、互換性のあるインプレース更新プログラムです。 つまり、.NET Framework 4.5.2、4.6、または 4.6.1 で実行されている古いバージョンのアプリケーションは、.NET ランタイムが .NET Framework 4.5.2、4.6、または 4.6.1 からそれ以降のバージョンに更新された場合でも、変更なく実行されます。 ただし、運用環境で新しいバージョンをロールアウトする前に、まず運用前環境で .NET ランタイムを .NET Framework 4.6.2 以降に更新して、デプロイを検証することをお勧めします。
4.5.2、4.6、または 4.6.1 .NET Frameworkインストールする別のソフトウェア ベンダーの製品を使用します。 どうすればよいですか?
コンピューターがWindows Updateから更新プログラムを受け取った場合、.NET Framework 4.8 がWindows Updateを介して広く展開されているため、コンピューターは.NET Framework 4.8 でアプリを既に実行している可能性が最も高くなります。 Windows Updateがブロックされているか使用できない環境でアプリが使用されている場合は、アプリケーション ベンダーと、.NET Framework 4.6.2 以降をデプロイするアプリケーションの更新バージョンに関するページにアクセスする必要があります。
.NET Frameworkのサポート ライフサイクル ポリシーとは
.NET Frameworkの各バージョンの特定のサポート終了日については、このサイトを参照してください。
これは .NET Core と .NET 5 以降に影響しますか?
いいえ。 アナウンスの範囲は、.NET Framework 4.5.2、4.6、4.6.1 です。 .NET Core と .NET 5 のサポート ライフサイクルに変更はありません。