Поделиться через


Экспорт сертификата разработки больше не создает папку

При экспорте сертификата разработки ASP.NET Core (который используется для включения HTTPS в локальной разработке), он больше не создает каталог, в который экспортируется сертификат, если этот каталог не существует.

Это изменение сначала отображается в .NET 8.0.10 и .NET 9 RC 1.

Представленные версии

.NET 9 RC 1

Прежнее поведение

Ранее, если целевой каталог не существовал при dotnet dev-certs выполнении команды, он был создан (с разрешениями, унаследованными от содержащего каталога). Например, C:\NonExistent\ было бы создано с помощью следующей команды:

dotnet dev-certs https -ep C:\NonExistent\cert.pfx

Новое поведение

Начиная с .NET 9, если целевой каталог не существует, экспорт завершается ошибкой, например:

Произошла ошибка при экспорте сертификата разработчика HTTPS в файл.

Тип критического изменения

Это изменение поведения.

Причина изменения

Сертификат разработки экспортируется с его закрытым ключом, поэтому несанкционированный доступ может быть проблематичным. Однако может потребоваться сделать его читаемым для нескольких учетных записей, например, если процесс использования не будет выполняться в качестве текущего пользователя. Вместо того чтобы пытаться определить (и безопасно установить) разрешения для целевого каталога, dotnet dev-certs требуется, чтобы он уже существовал.

Перед вызовом создайте целевой каталог (с соответствующими dotnet dev-certsразрешениями).

Затронутые API

Н/Д