Последна промяна: 22 юни 2021 г.

Дата на публикуване: 26 април 2021 г.  

Защо 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, ще трябва да преминете към по-нова версия по време на изпълнение, поне .NET Framework (платформа) 4.6.2 и за предпочитане .NET Framework (платформа) 4.8. Имайте предвид, че трябва да актуализирате само разположения изпълним модул, върху който се изпълняват вашите приложения. Няма очакване, че ще изградите отново приложението си, за да получите по-новата версия.

Разполагам приложението си в услугата за приложения на Azure. Трябва ли да направя нещо?

.NET Framework (платформа) 4.8 вече е разположен в услугата за приложения на Azure, така че ако изпълнявате вашето уеб приложение или функция на Azure в услугата за приложения на Azure, тогава няма нищо, което трябва да направите, вече използвате най-новата версия 4.8.  

Използвам виртуална машина в Azure, трябва ли да направя нещо?

Работим с нашите партньорски екипи, за да гарантираме, че VM изображенията на гости за семейства ОС, които не се доставят с най-малко 4.6.2, са актуализирани да включват това и очакват това да бъде налично преди април 2022 г., когато спрем поддръжката на 4.5.2, 4.6 и 4.6.1 . Преди април 2022 г. можете да продължите да използвате .NET Framework (платформа) 4.5.2, 4.6 и 4.6.1 и ще бъдете напълно поддържани. Във връзка с това, ако искате да започнете бързо проверката на функционалността на вашето приложение на по-новата версия по време на изпълнение веднага, можете да използвате тези указания, за да инсталирате .NET Framework (платформа) в услугите в облака на Azure.

Моето приложение е разположено в корпоративна среда, управлявана с помощта на услугите за актуализиране на Windows Server (WSUS) или Configuration Manager на System Center (SCCM), какво трябва да направя?

Най-новата .NET Framework (платформа) runtime – 4.8 е налична на актуализиране на Windows, Windows Server Услуги за актуализиране (WSUS) и каталога на Microsoft Update (MU) за клиентски операционни системи и каталога WSUS и MU за сървърни операционни системи.

Какви ресурси са налични за мен, за да ви помогна с това?

Ето някои ресурси, които може да намерите за полезни:

Ще се поддържа ли .NET Framework (платформа) 4.5.2, 4.6 или 4.6.1 на Windows Embedded 8?

.NET Framework (платформа) 4.5.2, 4.6 и 4.6.1 ще достигнат края на поддръжката на 26 април 2022 г., включително за клиенти, които използват това на Windows Embedded 8. Клиентите, които използват тези .NET Framework (платформа) версии, трябва да планират да преминат към по-нова версия по време на изпълнение, най-малко .NET Framework (платформа) 4.6.2 и за предпочитане .NET Framework (платформа) 4.8.

Използвам .NET Framework (платформа) 4.5.2, 4.6 или 4.6.1 на Windows Server 2008 г. Какво трябва да направя?

По-рано .NET Framework (платформа) 4.6.1 и по-стари версии се поддържаха Windows Server 2008, но .NET Framework (платформа) 4.6.2 и по-новите версии не се поддържаха. Като част от този край на актуализацията на поддръжката .NET Framework (платформа) 4.6.2 е актуализирана, за да включва Windows Server 2008 като поддържана платформа. Клиентите, използващи .NET Framework (платформа) 4.5.2, 4.6 или 4.6.1 на Windows Server 2008, трябва да планират преминаване до .NET Framework (платформа) 4.6.2.

Забележка: по-новите версии на .NET Framework (платформа) 4.7 и по-нови версии не поддържат Windows Server 2008.  

Използвам Windows 10 2015 LTSC, които се доставят с .NET Framework (платформа) 4.6. Какво трябва да направя?

Windows 10 Enterprise LTSC 2015 идва с .NET Framework (платформа) 4.6, вградени в операционната система. Тази версия на ОС е издание на канал за дългосрочно обслужване (LTSC). Ще продължим да поддържаме .NET Framework (платформа) 4.6 на Windows 10 Enterprise LTSC 2015 до края на поддръжката на версията на ОС (октомври 2025 г.).  

Има ли промени, причиняващи грешки в .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, и повторно насочване на промените в различните версии на семейството .NET Framework (платформа) 4.x, можете да намерите тук.

Ще трябва ли да компилирам/създам отново приложенията си, за да използвам .NET Framework (платформа) 4.6.2 и по-нови версии?

.NET Framework (платформа) 4.6.2 и по-нови версии са съвместими, текущи актуализации върху предишни версии на .NET Framework (платформа) 4,x, включително 4.5.2, 4.6 и 4.6.1. Това означава, че очакваме приложенията, създадени на предишни версии на .NET Framework (платформа) 4.x, да продължат да работят на .NET Framework (платформа) 4.6.2 и по-нови версии без промени. Повторното компилиране на приложения, така че да са насочени към тези версии, не е необходимо, трябва само да актуализирате версията по време на изпълнение. Препоръчваме ви да тествате функционалността на вашето приложение на по-нова версия на .NET Framework (платформа) изпълнение, преди да я разположите в производствената версия.

Използвам ClickOnce или Visual Studio Installer Project, за да разположим .NET Framework (платформа) 4.6.2 или по-нова версия като предварително изискване за моето приложение, какво трябва да направя?

Инсталиращите програми за .NET Framework (платформа) 4.6.2 и по-нови версии са възстановени, така че ако използвате bootstrapper за разполагане на .NET Framework (платформа) 4.6.2 или по-нова като предварително изискване за вашето приложение, ще трябва да актуализирате атрибута PublicKey в Product.xml и Package.xml файлове, за да може стартиращата програма ClickOnce правилно да открие актуализираните пакети на инсталиращата програма на .NET.

Product.xml се използва за английски продукти и се намира в основата на изданието на стартовата програма. Например в случай на .NET Framework (платформа) 4.6.2 този файл ще бъде под %ProgramFiles(x86)%\Microsoft SDKs\ClickOnce Bootstrapper\Packages\DotNetFX462\.

Също така ще намерите множество Package.xml файлове под определени папки на езиково-географска променлива, които се използват за разполагане .NET Framework (платформа) езикови пакети с вашето приложение.

Трябва да актуализирате стойността на атрибута PublicKey за елемента Package/PackageFiles/PackageFile до тази стойност:

3082010a0282010100b6bb19591000a3a9f1e4b85ca80b07cbdb9a1f23d0d958ab78c048f7241438f063edd54b03bfcdf809ca1450f327b3fe82b4fa1a4384e1cbf91b38e83fcc9027ac97a2310a917b62ec75bfcd488da05d75fd95a775ff23d40ce5e8e063703e35ead49662f87655f756d4afa663cde3e3d60f9b7a9b2a77f1c2d5749c8f47d3dda0312d1ca4252cc4c4406653d792cae3b052eabe0ab8ae750b5618c74953ae74bff2a6cdf338e98ea5a3f3029e7a6fcf7cc42fb3cc754770aa3fe7621186dd45482f15fbb4074c6f3ecb37ee96388a53d40e35af06a83959effbc51af781f0863666bb54bbdf2795ed1659371a2111e8098bd618b2c5daed465452408203e2a70203010001 Обърнете внимание, че има два екземпляра на елемента //PackageFiles/PackageFile в Product.xml и по един във всеки от Package.xml файла. Всички екземпляри трябва да бъдат актуализирани с правилния PublicKey.

Вижте тази статия за Създаване на пакети за стартиране за повече информация относно това.

Ако използвате друга стартираща програма, като например WiX Bootstrapper (Burn), за повече информация се обърнете към Документация за запис за инсталиране на .NET Framework (платформа) предварителни изисквания.

Използвам .NET Framework (платформа) 3.5 SP1 – мога ли да продължа да използвам това?

Няма промяна в жизнения цикъл за поддръжка за .NET Framework (платформа) 3.5 SP1. Вижте този сайт за конкретна информация за край на поддръжката за .NET Framework (платформа) 3.5.

Приложението ми разпространява повторно версия на програмата за инсталиране на .NET Framework (платформа), която няма да се поддържа в бъдеще. Какво трябва да направя?

Трябва да планирате да изпращате поддържана инсталираща програма на .NET runtime (4.6.2 или по-нова версия) със следващата планирана актуализация за вашето приложение. Ако вашето приложение е в среда, в която крайният потребител получава актуализации от актуализиране на Windows тогава компютърът му най-вероятно вече изпълнява приложението ви на .NET Framework (платформа) 4.8, тъй като .NET Framework (платформа) 4.8 е разположен широко чрез - Актуализиране на Windows, ще го напишем. Ако вашето приложение се използва в среда, където актуализиране на Windows е блокирано или недостъпно, може да се наложи крайният потребител за вашето приложение да разполага .NET Framework (платформа) 4.6.2 или по-нова версия, ако вашата програма за инсталиране на приложения не прави това за тях.

Използвам продукт на Microsoft като Exchange Server , SQL Server или Sharepoint, който зависи от .NET Framework (платформа). Трябва ли да извършвам актуализации на тези продукти?

По-новите версии на продукти като 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 или по-нова версия първо в предпроизводствена среда, преди да пуснете по-нова версия в производствената среда.

Използвам продукт от друг доставчик на софтуер, който инсталира .NET Framework (платформа) 4.5.2, 4.6 или 4.6.1. Какво трябва да направя?

Ако компютърът ви получава актуализации от актуализиране на Windows тогава най-вероятно на компютъра ви вече се изпълнява приложението на .NET Framework (платформа) 4.8, тъй като .NET Framework (платформа) 4.8 е разположен широко чрез актуализиране на Windows. Ако приложението се използва в среда, където актуализиране на Windows е блокирана или недостъпна, трябва да се свържете с доставчика на приложението и актуализирана версия на приложението, което разполага .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.

Нуждаете ли се от още помощ?

Искате ли още опции?

Разгледайте ползите от абонамента, прегледайте курсовете за обучение, научете как да защитите устройството си и още.