Это очень короткий пост, посвященный ошибке с dotnet dev-certs https --import в macOS.

Обычно вы используете dotnet dev-certs https --trust для создания сертификатов разработки ASP.NET и покончите с этим. Но иногда вам нужно создать свой собственный сертификат или использовать сертификат в нескольких средах. Обычно вы импортируете внешний сертификат с dotnet dev-certs https --clean --import, но, к сожалению, вы получаете сообщение об ошибке при выполнении этой команды в macOS (по крайней мере, на момент написания статьи о .NET SDK 6.0.202).

Предполагая, что ваш сертификат экспортирован в формат PFX, вы можете импортировать его вручную (заменив <CERT> именем файла сертификата и <CERT_PASSWORD> паролем экспортированного сертификата):

security import <CERT>.pfx \
  -k ${HOME}/Library/Keychains/login.keychain-db \
  -t cert -f pkcs12 -P <CERT_PASSWORD> -A

Это именно та команда, которую dotnet dev-certs пытается выполнить, но терпит неудачу.

Имейте в виду, что в этот момент ваш сертификат импортирован, но все еще не доверен. Вы можете использовать стандартную команду dotnet dev-certs, чтобы доверять ему:

dotnet dev-certs https --trust

Если вы хотите глубже изучить сертификаты разработки ASP.NET, посетите отличный пост Криса Клага.

Первоначально опубликовано на https://olegtarasov.me 26 мая 2022 г.