Sửa đổi gần nhất: 22/06/2021

Ngày phát hành: 26 tháng 4 năm 2021  

Tại sao Microsoft kết thúc hỗ trợ cho .NET Framework 4.5.2, 4.6 và 4.6.1?

.NET Framework trước đây được ký điện tử bằng các chứng chỉ sử dụng Thuật toán Hàm băm Bảo mật (SHA-1). SHA1- là một thuật toán băm mã hóa kế thừa không còn được coi là an toàn. Chúng tôi đang ngừng cung cấp nội dung đã được ký bằng các chứng chỉ kỹ thuật số đã sử dụng SHA1 để hỗ trợ các tiêu chuẩn ngành đang phát triển.

Sau khi xem xét dữ liệu tải xuống và sử dụng trên các phiên bản .NET Framework khác nhau, chúng tôi thấy rằng việc cập nhật .NET Framework 4.6.2 và các phiên bản mới hơn để hỗ trợ các chứng chỉ kỹ thuật số mới hơn (đối với các trình cài đặt) sẽ làm hài lòng phần lớn người dùng (98%) mà không cần thay đổi. Một số lượng nhỏ người dùng sử dụng .NET Framework 4.5.2, 4.6 hoặc 4.6.1 sẽ cần nâng cấp lên phiên bản .NET Framework mới hơn để tiếp tục được hỗ trợ. Các ứng dụng không cần phải được biên soạn lại. Với bản chất của thay đổi này, chúng tôi đã quyết định rằng nhắm mục tiêu .NET Framework 4.6.2 trở lên là sự cân bằng tốt nhất về hỗ trợ và nỗ lực.

Xem bài viết hỗ trợ về việc ngừng hoạt động nội dung SHA-1 này để biết thêm thông tin.

Làm cách nào để biết tôi đã cài đặt các phiên bản này chưa?

Xem bài viết về Xác định phiên bản .NET Framework được cài đặt.

Tôi vẫn đang sử dụng các phiên bản này, tôi cần làm gì?

Nếu bạn đang sử dụng .NET Framework 4.5.2, 4.6 hoặc 4.6.1, bạn sẽ cần chuyển lên phiên bản thời gian chạy gần đây hơn, ít nhất là .NET Framework 4.6.2 và tốt nhất là .NET Framework 4.8. Lưu ý rằng bạn chỉ cần cập nhật thời gian chạy đã triển khai mà các ứng dụng của bạn chạy trên đó. Không có kỳ vọng rằng bạn xây dựng lại ứng dụng của mình để nhắm mục tiêu lại phiên bản mới hơn.

Tôi triển khai ứng dụng của mình cho Dịch vụ Ứng dụng Azure, tôi có cần phải làm gì không?

.NET Framework 4.8 đã được triển khai trong Azure App Service, vì vậy nếu bạn đang chạy ứng dụng web hoặc chức năng Azure trong Azure App Service thì bạn không cần làm gì cả, nghĩa là bạn đang sử dụng phiên bản 4.8 mới nhất.  

Tôi sử dụng Máy Ảo trong Azure, tôi có cần phải làm gì không?

Chúng tôi đang làm việc với các nhóm đối tác để đảm bảo hình ảnh máy ảo khách dành cho các dòng HĐH không được cập nhật tối thiểu là 4.6.2 để bao gồm tính năng này và dự kiến tính năng này sẽ khả dụng trước tháng 4 năm 2022 khi chúng tôi ngừng hỗ trợ 4.5.2, 4.6 và 4.6.1 . Trước tháng 4 năm 2022, bạn có thể tiếp tục sử dụng .NET Framework 4.5.2, 4.6 và 4.6.1 và sẽ được hỗ trợ đầy đủ. Giả sử, nếu bạn muốn bắt đầu xác thực chức năng ứng dụng của mình trên phiên bản thời gian chạy mới hơn ngay lập tức, bạn có thể sử dụng hướng dẫn này để Cài đặt .NET Framework trên Dịch vụ Đám mây Azure.

Ứng dụng của tôi được triển khai bên trong một môi trường doanh nghiệp được quản lý bằng cách sử dụng Dịch vụ Cập nhật Windows Server (WSUS) hoặc Trung tâm Hệ thống Configuration Manager (SCCM), tôi nên làm gì?

Thời gian chạy .NET Framework mới nhất – 4.8 có sẵn trên Windows Update, Windows Server Update Services (WSUS) và Danh mục Microsoft Update (MU) dành cho hệ điều hành máy khách cũng như Danh mục WSUS và MU dành cho hệ điều hành Máy chủ.

Tôi có những tài nguyên nào để giúp giải quyết vấn đề này?

Dưới đây là một số tài nguyên bạn có thể thấy hữu ích:

.NET Framework 4.5.2, 4.6 hoặc 4.6.1 có được hỗ trợ trên Windows Embedded 8 không?

.NET Framework 4.5.2, 4.6 và 4.6.1 sẽ kết thúc hỗ trợ vào ngày 26 tháng 4 năm 2022, bao gồm cả đối với khách hàng sử dụng ứng dụng này trên Windows Embedded 8. Khách hàng sử dụng các phiên bản .NET Framework này nên lên kế hoạch chuyển sang phiên bản thời gian chạy gần đây hơn, ít nhất là .NET Framework 4.6.2 và tốt nhất là .NET Framework 4.8.

Tôi sử dụng .NET Framework 4.5.2, 4.6 hoặc 4.6.1 trên Windows Server 2008. Tôi nên làm gì?

Trước đây,.NET Framework 4.6.1 và các phiên bản cũ hơn được hỗ trợ Windows Server 2008 nhưng .NET Framework 4.6.2 và các phiên bản mới hơn thì không hỗ trợ. Là một phần của bản cập nhật kết thúc hỗ trợ .NET Framework 4.6.2 này đã được cập nhật để bao gồm Windows Server 2008 như một nền tảng được hỗ trợ. Khách hàng sử dụng .NET Framework 4.5.2, 4.6 hoặc 4.6.1 trên Windows Server 2008 nên lên kế hoạch chuyển lên .NET Framework 4.6.2.

Lưu ý: các phiên bản mới hơn của .NET Framework 4.7 trở lên không hỗ Windows Server 2008.  

Tôi đang sử dụng Windows 10 LTSC 2015 kèm theo .NET Framework 4.6. Tôi nên làm gì?

Windows 10 Enterprise LTSC 2015 đi kèm với .NET Framework 4.6 được tích hợp vào HĐH. Phiên bản hệ điều hành này là bản phát hành kênh cung cấp dịch vụ dài hạn (LTSC). Chúng tôi sẽ tiếp tục hỗ trợ .NET Framework 4.6 trên Windows 10 Enterprise LTSC 2015 cho đến khi kết thúc hỗ trợ phiên bản HĐH (tháng 10 năm 2025).  

Có sự thay đổi nổi bật nào trong .NET Framework 4.5.2 hay không? Tại sao lại bao gồm những thay đổi này?

Có rất ít thay đổi trong .NET Framework 4.5.2 không hoàn toàn tương thích với các phiên bản .NET Framework trước đây.  Chúng tôi gọi những thay đổi về thời gian chạy này. Chúng tôi chỉ đưa vào những thay đổi này khi hoàn toàn cần thiết vì lợi ích bảo mật, để tuân thủ các tiêu chuẩn toàn ngành hoặc để khắc phục sự không tương thích trước đây trong .NET Framework. Ngoài ra, có một số ít thay đổi được bao gồm trong .NET Framework 4.5.2 sẽ chỉ được bật nếu bạn chọn biên dịch lại ứng dụng của mình dựa trên .NET Framework 4.5.2; chúng tôi gọi những thay đổi này là thay đổi tái định hướng mục tiêu.

Bạn có thể tìm thêm thông tin về tính tương thích của ứng dụng bao gồm cả những thay đổi về thời gian chạy .NET và tái định hướng mục tiêu trên các phiên bản khác nhau trong dòng .NET Framework 4.x tại đây.

Tôi có cần phải viết lại/dựng lại các ứng dụng của mình để sử dụng .NET Framework 4.6.2 và các phiên bản mới hơn không?

.NET Framework 4.6.2 và các phiên bản mới hơn là các bản cập nhật tương thích, tại chỗ trên cùng các phiên bản .NET Framework 4.x trước đó, bao gồm 4.5.2, 4.6 và 4.6.1. Điều này có nghĩa là chúng tôi mong đợi các ứng dụng được xây dựng trên các phiên bản .NET Framework 4.x trước đây sẽ tiếp tục chạy trên .NET Framework 4.6.2 và các phiên bản mới hơn mà không có thay đổi nào. Việc biên soạn lại các ứng dụng để nhắm mục tiêu các phiên bản này là không cần thiết, bạn chỉ cần cập nhật phiên bản thời gian chạy. Chúng tôi khuyên bạn nên kiểm tra chức năng ứng dụng của mình trên phiên bản thời gian chạy .NET Framework mới hơn trước khi triển khai sang sản xuất.

Tôi sử dụng ClickOnce hoặc Visual Studio Installer Project để triển khai .NET Framework 4.6.2 trở lên làm điều kiện tiên quyết cho ứng dụng của mình, tôi nên làm gì?

Các trình cài đặt cho .NET Framework 4.6.2 trở lên đã được xây dựng lại, vì vậy nếu bạn sử dụng trình khởi động để triển khai .NET Framework 4.6.2 trở lên như là điều kiện tiên quyết với ứng dụng của mình, bạn sẽ cần cập nhật thuộc tính PublicKey trong tệp Product.xml và Package.xml để clickOnce bootstrapper phát hiện đúng gói trình cài đặt .NET được cập nhật.

Product.xml được sử dụng cho các sản phẩm tiếng Anh và sống trong gốc của bản phát hành bootstrapper. Ví dụ: trong trường hợp .NET Framework 4.6.2, tệp này sẽ nằm trong %ProgramFiles(x86)%\Microsoft SDKs\ClickOnce Bootstrapper\Packages\DotNetFX462\.

Bạn cũng sẽ tìm thấy nhiều tệp Package.xml theo các thư mục cụ thể bản địa, những tệp này được sử dụng để triển khai các gói ngôn ngữ .NET Framework với ứng dụng của bạn.

Bạn cần cập nhật giá trị của thuộc tính PublicKey cho thành phần Package/PackageFiles/PackageFile thành giá trị này:

3082010a0282010100b6bb19591000a3a9f1e4b85ca80b07cbdb9a1f23d0d958ab78c048f7241438f063edd54b03bfcdf809ca1450f327b3fe82b4fa1a4384e1cbf91b38e83fcc9027ac97a2310a917b62ec75bfcd488da05d75fd95a775ff23d40ce5e8e063703e35ead49662f87655f756d4afa663cde3e3d60f9b7a9b2a77f1c2d5749c8f47d3dda0312d1ca4252cc4c4406653d792cae3b052eabe0ab8ae750b5618c74953ae74bff2a6cdf338e98ea5a3f3029e7a6fcf7cc42fb3cc754770aa3fe7621186dd45482f15fbb4074c6f3ecb37ee96388a53d40e35af06a83959effbc51af781f0863666bb54bbdf2795ed1659371a2111e8098bd618b2c5daed465452408203e2a70203010001 Lưu ý rằng có hai phiên bản của thành phần //Package/PackageFiles/PackageFile trong Product.xml và một bản trong mỗi tệp Package.xml. Tất cả các trường hợp cần được cập nhật với PublicKey chính xác.

Xem bài viết này để biết về Cách tạo gói bootstrapper để biết thêm thông tin về việc này.

Nếu bạn sử dụng một trình khởi động khác như WiX Bootstrapper (Burn) bạn tham khảo ghi tài liệu để cài đặt điều kiện tiên quyết .NET Framework để biết thêm thông tin.

Tôi sử dụng .NET Framework 3.5 SP1 – tôi có thể tiếp tục sử dụng phiên bản này không?

Không có thay đổi nào đối với vòng đời hỗ trợ cho .NET Framework 3.5 SP1. Xem trang web này để biết thông tin về việc kết thúc hỗ trợ cụ thể cho .NET Framework 3.5.

Ứng dụng của tôi phân phối lại phiên bản trình cài đặt .NET Framework sẽ không được hỗ trợ trong tương lai. Tôi nên làm gì?

Bạn nên lên kế hoạch cung cấp một trình cài đặt thời gian chạy .NET được hỗ trợ (4.6.2 trở lên) với bản cập nhật được lên kế hoạch tiếp theo cho ứng dụng của bạn. Nếu ứng dụng của bạn nằm trong môi trường mà người dùng cuối nhận được các bản cập nhật từ Windows Update thì rất có thể máy tính của họ đang chạy ứng dụng của bạn trên .NET Framework 4.8 vì .NET Framework 4.8 đã được triển khai rộng rãi thông qua Windows Update. Nếu ứng dụng của bạn được sử dụng trong môi trường mà Windows Update bị chặn hoặc không khả dụng thì người dùng cuối cho ứng dụng của bạn có thể cần phải tự triển khai .NET Framework 4.6.2 trở lên nếu trình cài đặt ứng dụng của bạn không thực hiện điều này cho họ.

Tôi sử dụng sản phẩm Microsoft như Exchange Server, SQL Server hoặc Sharepoint phụ thuộc vào .NET Framework. Tôi có cần thực hiện cập nhật cho các sản phẩm này không?

Các phiên bản mới hơn của sản phẩm như Exchange, SQL Server, SharePoint, v.v. được dựa trên .NET Framework 4.6.2 trở lên. .NET Framework 4.6.2 và các phiên bản mới hơn là các bản cập nhật tương thích, tại chỗ hàng đầu của các phiên bản .NET Framework 4.x trước đây. Điều này có nghĩa là một phiên bản cũ hơn của một ứng dụng đang chạy trên .NET Framework 4.5.2, 4.6 hoặc 4.6.1 sẽ tiếp tục chạy mà không có bất kỳ thay đổi nào khi thời gian chạy .NET được cập nhật từ .NET Framework 4.5.2, 4.6 hoặc 4.6.1 lên các phiên bản mới hơn. Dù vậy, chúng tôi khuyên bạn nên xác thực quá trình triển khai bằng cách cập nhật thời gian chạy .NET lên .NET Framework 4.6.2 trở lên trong môi trường tiền sản xuất trước khi triển khai phiên bản mới hơn trong môi trường sản xuất.

Tôi sử dụng một sản phẩm từ một nhà cung cấp phần mềm khác cài đặt .NET Framework 4.5.2, 4.6 hoặc 4.6.1. Tôi nên làm gì?

Nếu máy tính của bạn nhận được các bản cập nhật từ Windows Update thì rất có thể máy tính của bạn đang chạy ứng dụng trên .NET Framework 4.8 vì .NET Framework 4.8 đã được triển khai rộng rãi thông qua Windows Update. Nếu ứng dụng được sử dụng trong môi trường mà Windows Update bị chặn hoặc không khả dụng thì bạn nên liên hệ với nhà cung cấp ứng dụng và để có phiên bản cập nhật của ứng dụng triển khai .NET Framework 4.6.2 trở lên.

Chính sách vòng đời hỗ trợ cho .NET Framework là gì?

Xem trang web này để biết ngày kết thúc hỗ trợ cụ thể cho từng phiên bản .NET Framework.

Điều này có ảnh hưởng đến .NET Core và .NET 5 trở lên không?

Không. Thông báo này được đặt phạm vi trong .NET Framework 4.5.2, 4.6 và 4.6.1. Không có thay đổi nào đối với vòng đời hỗ trợ cho .NET Core và .NET 5.

Bạn cần thêm trợ giúp?

Bạn muốn xem các tùy chọn khác?

Khám phá các lợi ích của gói đăng ký, xem qua các khóa đào tạo, tìm hiểu cách bảo mật thiết bị của bạn và hơn thế nữa.