Thay đổi đột phá (Breaking change): Xuất chứng chỉ dev không còn tạo thư mục tự động
Khi bạn xuất chứng chỉ phát triển (development certificate) của ASP.NET Core (được dùng để bật HTTPS trong quá trình phát triển cục bộ), nó sẽ không còn tự động tạo thư mục đích nếu thư mục đó chưa tồn tại.
Thay đổi này xuất hiện lần đầu trong .NET 8.0.10 và .NET 9 RC 1.
Phiên bản giới thiệu
.NET 9 RC 1
Hành vi cũ
Trước đây, nếu thư mục đích không tồn tại khi chạy lệnh dotnet dev-certs, nó sẽ được tạo tự động (với quyền hạn kế thừa từ thư mục chứa nó). Ví dụ: C:\NonExistent\ sẽ được tạo khi chạy lệnh sau:
dotnet dev-certs https -ep C:\NonExistent\cert.pfx
Hành vi mới
Bắt đầu từ .NET 9, nếu thư mục đích không tồn tại, quá trình xuất sẽ thất bại với thông báo như:
There was an error exporting the HTTPS developer certificate to a file.
Loại thay đổi đột phá
Đây là thay đổi hành vi (behavioral change).
Lý do thay đổi
Chứng chỉ phát triển được xuất cùng với khóa riêng tư (private key), vì vậy quyền truy cập trái phép có thể gây ra vấn đề. Tuy nhiên, đôi khi cần phải cho phép nhiều tài khoản đọc chứng chỉ, ví dụ nếu tiến trình sử dụng nó không chạy dưới tư cách người dùng hiện tại. Thay vì cố gắng xác định (và thiết lập an toàn) quyền hạn cho thư mục đích, dotnet dev-certs yêu cầu thư mục đó phải tồn tại trước.
Hành động được khuyến nghị
Tạo thư mục đích (với quyền hạn phù hợp) trước khi gọi lệnh dotnet dev-certs.
API bị ảnh hưởng
Không có.