Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Эта статья относится к: ✔️ пакету SDK для .NET 6 и более поздних версий
Имя.
dotnet dev-certs — создает самозаверяющий сертификат для включения использования HTTPS в разработке.
Краткие сведения
dotnet dev-certs https
[-c|--check] [--check-trust-machine-readable]
[--clean] [-ep|--export-path <PATH>]
[--format] [-i|--import] [-np|--no-password]
[-p|--password] [-q|--quiet] [-t|--trust]
[-v|--verbose] [--version]
dotnet dev-certs https -h|--help
Description
Команда dotnet dev-certs управляет самозаверяющий сертификатом, чтобы включить использование HTTPS в разработке локальных веб-приложений. Основными функциями являются:
- Создание сертификата для использования с конечными точками HTTPS во время разработки.
- Доверие созданному сертификату на локальном компьютере.
- Удаление созданного сертификата с локального компьютера.
- Экспорт сертификата в различных форматах, чтобы его можно было использовать другими средствами.
- Импорт существующего сертификата, созданного средством, на локальный компьютер.
Команды
httpsdotnet dev-certsимеет только одну команду:httpsКомандаdotnet dev-certs httpsбез параметров проверяет, присутствует ли сертификат разработки в хранилище сертификатов текущего пользователя на компьютере. Если команда находит сертификат разработки, отображается следующее сообщение:A valid HTTPS certificate is already present.Если команда не находит сертификат разработки, он создает его в хранилище сертификатов текущего пользователя, хранилище с именем
Myв расположенииCurrentUser. Физическое расположение сертификата — это сведения о реализации среды выполнения .NET, которая может измениться в любое время. В macOS в .NET 7.0 сертификат хранится в цепочке ключей пользователя и в виде PFX-файла: ~/.aspnet/https-aspnetcore-localhost-Thumbprint<[0.5]>.pfx.После создания сертификата команда отображает сообщение, как показано в следующем примере:
The HTTPS developer certificate was generated successfully.По умолчанию созданный сертификат не является доверенным. Чтобы доверять сертификату
--trust, используйте этот параметр.Чтобы создать файл, который можно использовать с другими инструментами, используйте этот
--export-pathпараметр.
Параметры
-c|--checkПроверяет наличие сертификата разработки, но не выполняет никаких действий. Используйте этот параметр,
--trustчтобы проверить, является ли сертификат допустимым, но и доверенным.--check-trust-machine-readableАналогично выполнению
--check --trust, но выводит результаты в формате JSON.--cleanУдаляет все сертификаты разработки HTTPS из хранилища сертификатов с помощью API хранилища сертификатов .NET. Не удаляет физические файлы, созданные с помощью
--export-pathпараметра. В macOS в .NET 7.0dotnet dev-certsкоманда создает сертификат по пути на диске, а операция очистки удаляет этот файл сертификата.Если в хранилище сертификатов есть по крайней мере один сертификат, команда отображает сообщение, как показано в следующем примере:
Cleaning HTTPS development certificates from the machine. A prompt might get displayed to confirm the removal of some of the certificates. HTTPS development certificates successfully removed from the machine.-ep|--export-path <PATH>Экспортирует сертификат в файл, чтобы его можно было использовать другими средствами. Укажите полный путь к экспортируемму файлу сертификата, включая имя файла. Содержащие каталоги уже должны существовать, и доступ к ним должен быть ограничен. Тип созданных файлов сертификатов зависит от того, какие параметры используются с
--export-path:Параметры Экспортируемые данные --export-pathОбщедоступная часть сертификата в виде PFX-файла. --export-path --format PEMОбщедоступная часть сертификата в формате PEM. Отдельный файл .key не создается. --export-path --passwordОбщедоступные и частные части сертификата в виде PFX-файла. --export-path --password --format PEMОбщедоступные и частные части сертификата в виде пары файлов в формате PEM. Файл ключа имеет расширение .key и защищен заданным паролем. --export-path --no-password --format PEMОбщедоступные и частные части сертификата в виде пары файлов в формате PEM. Файл ключа имеет расширение .key и экспортируется в виде обычного текста. Этот --no-passwordпараметр предназначен только для внутреннего тестирования.--format
При использовании с
--export-pathпараметром указывает формат экспортированного файла сертификата. Допустимые значения:PFXбезPEMучета регистра. Значение по умолчанию —PFX.Формат файла не зависит от расширения имени файла. Например, если указано
--format pfxи--export-path ./cert.pemвы получите файл с именем cert.pem вPFXформате.Сведения о влиянии этого параметра при использовании с
--password,--no-passwordили без этих параметров см . в разделе --export-path ранее в этой статье.-i|--import <PATH>Импортирует предоставленный сертификат разработки HTTPS на локальный компьютер. Требуется также указать
--cleanпараметр, который очищает все существующие сертификаты разработчика HTTPS.PATHуказывает путь к PFX-файлу сертификата. Укажите пароль с параметром--password.-np|--no-passwordПри экспорте сертификата в файлы формата PEM пароль не используется. Файл ключа экспортируется в виде обычного текста. Этот параметр не применим к PFX-файлам и предназначен только для внутреннего тестирования.
-p|--passwordУказывает пароль для использования:
- При экспорте сертификата разработки в PFX или PEM-файл.
- При импорте PFX-файла.
При экспорте с
--format PEMпомощью общедоступных и частных частей сертификата экспортируются в виде пары файлов в формате PEM. Файл ключа имеет расширение .key и защищен заданным паролем. Помимо имени файла, указанного для--export-pathпараметра, команда создает другой файл в том же каталоге с тем же именем, но расширением .key . Например, следующая команда создаст файл с именем localhost.pem и файл с именем localhost.key в каталоге /home/user:dotnet dev-certs https --format pem -ep /home/user/localhost.pem -p $CREDENTIAL_PLACEHOLDER$В примере
$CREDENTIAL_PLACEHOLDER$представляет пароль.-q|--quietОтображать только предупреждения и ошибки.
-t|--trustДоверяет сертификату на локальном компьютере.
Если этот параметр не указан, сертификат добавляется в хранилище сертификатов, но не в доверенный список.
В сочетании с
--checkпараметром проверяет, является ли сертификат доверенным.-v|--verboseОтображение сведений об отладке.
Примеры
Проверьте наличие сертификата разработки и создайте его в хранилище сертификатов по умолчанию, если он еще не существует. Но не доверяйте сертификату.
dotnet dev-certs httpsУдалите все сертификаты разработки, которые уже существуют на локальном компьютере.
dotnet dev-certs https --cleanИмпорт PFX-файла.
dotnet dev-certs https --clean --import ./certificate.pfx -p $CREDENTIAL_PLACEHOLDER$В предыдущем примере
$CREDENTIAL_PLACEHOLDER$представляет пароль.Проверьте, присутствует ли доверенный сертификат разработки на локальном компьютере.
dotnet dev-certs https --check --trustСоздайте сертификат, доверяйте ему и экспортируйте его в PFX-файл.
dotnet dev-certs https -ep ./certificate.pfx -p $CREDENTIAL_PLACEHOLDER$ --trustСоздайте сертификат, доверяйте ему и экспортируйте его в PEM-файл.
dotnet dev-certs https -ep ./certificate.crt --trust --format PEMСоздайте сертификат, доверяйте ему и экспортируйте его в PEM-файл, включая закрытый ключ:
dotnet dev-certs https -ep ./certificate.crt -p $CREDENTIAL_PLACEHOLDER$ --trust --format PEM
См. также
- Создание самозаверяющих сертификатов с помощью интерфейса командной строки .NET
- Принудительное применение HTTPS в ASP.NET Core
- Устранение неполадок с сертификатами, таких как сертификат ненадежный
- Размещение образов ASP.NET Core с помощью Docker по протоколу HTTPS
- Размещение образов ASP.NET Core с помощью Docker Compose по протоколу HTTPS