dotnet dev-certs
Ten artykuł dotyczy: ✔️ zestaw .NET Core 3.1 SDK i nowsze wersje
Nazwa
dotnet dev-certs
— Generuje certyfikat z podpisem własnym, aby umożliwić korzystanie z protokołu HTTPS w programowania.
Streszczenie
dotnet dev-certs https
[-c|--check] [--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
Opis
Polecenie dotnet dev-certs
zarządza certyfikatem z podpisem własnym, aby umożliwić korzystanie z protokołu HTTPS w lokalnym tworzeniu aplikacji internetowej. Jego główne funkcje to:
- Generowanie certyfikatu do użycia z punktami końcowymi HTTPS podczas programowania.
- Ufając wygenerowanemu certyfikatowi na komputerze lokalnym.
- Usuwanie wygenerowanego certyfikatu z komputera lokalnego.
- Eksportowanie certyfikatu w różnych formatach w celu użycia go przez inne narzędzia.
- Importowanie istniejącego certyfikatu wygenerowanego przez narzędzie do komputera lokalnego.
Polecenia
https
dotnet dev-certs
ma tylko jedno polecenie:https
. Poleceniedotnet dev-certs https
bez opcji sprawdza, czy certyfikat dewelopera znajduje się w magazynie certyfikatów bieżącego użytkownika na maszynie. Jeśli polecenie znajdzie certyfikat dewelopera, zostanie wyświetlony komunikat podobny do następującego przykładu:A valid HTTPS certificate is already present.
Jeśli polecenie nie znajdzie certyfikatu programistycznego, tworzy go w magazynie certyfikatów bieżącego użytkownika, magazyn o nazwie
My
w lokalizacjiCurrentUser
. Lokalizacja fizyczna certyfikatu to szczegóły implementacji środowiska uruchomieniowego .NET, które może ulec zmianie w dowolnym momencie. W systemie macOS na platformie .NET 7.0 certyfikat jest przechowywany w łańcuchu kluczy użytkownika i jako plik PFX: ~/.aspnet/https-aspnetcore-localhost-Thumbprint<[0..5]>.pfx.Po utworzeniu certyfikatu polecenie wyświetla komunikat podobny do następującego przykładu:
The HTTPS developer certificate was generated successfully.
Domyślnie nowo utworzony certyfikat nie jest zaufany. Aby ufać certyfikatowi, użyj
--trust
opcji .Aby utworzyć plik, którego można użyć z innymi narzędziami, użyj
--export-path
opcji .
Opcje
-c|--check
Sprawdza istnienie certyfikatu programistycznego, ale nie wykonuje żadnej akcji. Użyj tej opcji z opcją
--trust
, aby sprawdzić, czy certyfikat jest nie tylko prawidłowy, ale także zaufany.--clean
Usuwa wszystkie certyfikaty programistyczne HTTPS z magazynu certyfikatów przy użyciu interfejsu API magazynu certyfikatów platformy .NET. Nie usuwa żadnych plików fizycznych, które zostały utworzone przy użyciu
--export-path
opcji . W systemie macOS na platformie .NET 7.0dotnet dev-certs
polecenie tworzy certyfikat na ścieżce na dysku, a operacja czyszczenia usuwa ten plik certyfikatu.Jeśli w magazynie certyfikatów znajduje się co najmniej jeden certyfikat, polecenie wyświetla komunikat podobny do następującego przykładu:
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>
Eksportuje certyfikat do pliku, aby mógł być używany przez inne narzędzia. Określ pełną ścieżkę do wyeksportowanego pliku certyfikatu, w tym nazwę pliku. Typ utworzonych plików certyfikatów zależy od opcji, które są używane z :
--export-path
Opcje Co jest eksportowane --export-path
Publiczna część certyfikatu jako plik PFX. --export-path --format PEM
Publiczna część certyfikatu w formacie PEM. Nie utworzono oddzielnego pliku .key . --export-path --password
Publiczne i prywatne części certyfikatu jako plik PFX. --export-path --password --format PEM
Publiczne i prywatne części certyfikatu jako para plików w formacie PEM. Plik klucza ma rozszerzenie .key i jest chroniony przez podane hasło. --export-path --no-password --format PEM
Publiczne i prywatne części certyfikatu jako para plików w formacie PEM. Plik klucza ma rozszerzenie .key i jest eksportowany w postaci zwykłego tekstu. Opcja jest przeznaczona --no-password
tylko do użytku wewnętrznego.--format
W przypadku użycia z programem
--export-path
określa format wyeksportowanego pliku certyfikatu. Prawidłowe wartości toPFX
iPEM
, bez uwzględniania wielkości liter. Wartość domyślna toPFX
.Format pliku jest niezależny od rozszerzenia nazwy pliku. Jeśli na przykład określisz
--format pfx
i--export-path ./cert.pem
, otrzymasz plik o nazwie cert.pem wPFX
formacie.Aby uzyskać informacje na temat wpływu tej opcji w przypadku używania z opcją
--password
,--no-password
lub bez jednej z tych opcji, zobacz --export-path wcześniej w tym artykule.-i|--import <PATH>
Importuje dostarczony certyfikat dewelopera HTTPS do komputera lokalnego. Wymaga również określenia
--clean
opcji, która usuwa wszystkie istniejące certyfikaty deweloperów HTTPS.PATH
określa ścieżkę do pliku certyfikatu PFX. Podaj hasło z opcją--password
.-np|--no-password
Nie używa hasła dla klucza podczas eksportowania certyfikatu do plików formatu PEM. Plik klucza jest eksportowany w postaci zwykłego tekstu. Ta opcja nie ma zastosowania do plików PFX i jest przeznaczona tylko do użytku wewnętrznego.
-p|--password
Określa hasło do użycia:
- Podczas eksportowania certyfikatu programistycznego do pliku PFX lub PEM.
- Podczas importowania pliku PFX.
Podczas eksportowania z
--format PEM
programem publiczne i prywatne części certyfikatu są eksportowane jako pary plików w formacie PEM. Plik klucza ma rozszerzenie .key i jest chroniony przez podane hasło. Oprócz nazwy pliku określonej dla--export-path
opcji polecenie tworzy inny plik w tym samym katalogu o tej samej nazwie, ale rozszerzenie klucza . Na przykład następujące polecenie spowoduje wygenerowanie pliku o nazwie localhost.pem i pliku o nazwie localhost.key w katalogu /home/user :dotnet dev-certs https --format pem -ep /home/user/localhost.pem -p $CREDENTIAL_PLACEHOLDER$
W przykładzie
$CREDENTIAL_PLACEHOLDER$
reprezentuje hasło.-q|--quiet
Wyświetla tylko ostrzeżenia i błędy.
-t|--trust
Ufa certyfikatowi na komputerze lokalnym.
Jeśli ta opcja nie zostanie określona, certyfikat zostanie dodany do magazynu certyfikatów, ale nie do listy zaufanych.
W połączeniu z opcją
--check
sprawdza, czy certyfikat jest zaufany.-v|--verbose
Wyświetl informacje o debugowaniu.
Przykłady
Sprawdź obecność certyfikatu programistycznego i utwórz go w domyślnym magazynie certyfikatów, jeśli jeszcze go nie istnieje. Nie ufaj jednak certyfikatowi.
dotnet dev-certs https
Usuń wszystkie certyfikaty programistyczne, które już istnieją na komputerze lokalnym.
dotnet dev-certs https --clean
Zaimportuj plik PFX.
dotnet dev-certs https --clean --import ./certificate.pfx -p $CREDENTIAL_PLACEHOLDER$
W poprzednim przykładzie
$CREDENTIAL_PLACEHOLDER$
reprezentuje hasło.Sprawdź, czy na komputerze lokalnym znajduje się zaufany certyfikat programowania.
dotnet dev-certs https --check --trust
Utwórz certyfikat, ufaj mu i wyeksportuj go do pliku PFX.
dotnet dev-certs https -ep ./certificate.pfx -p $CREDENTIAL_PLACEHOLDER$ --trust
Utwórz certyfikat, ufaj mu i wyeksportuj go do pliku PEM.
dotnet dev-certs https -ep ./certificate.crt --trust --format PEM
Utwórz certyfikat, ufaj mu i wyeksportuj go do pliku PEM, w tym klucza prywatnego:
dotnet dev-certs https -ep ./certificate.crt -p $CREDENTIAL_PLACEHOLDER$ --trust --format PEM
Zobacz też
- Generowanie certyfikatów z podpisem własnym przy użyciu interfejsu wiersza polecenia platformy .NET
- Wymuszanie protokołu HTTPS w ASP.NET Core
- Rozwiązywanie problemów z certyfikatami, takich jak certyfikat nie jest zaufany
- Hostowanie obrazów ASP.NET Core za pomocą platformy Docker za pośrednictwem protokołu HTTPS
- Hostowanie obrazów ASP.NET Core za pomocą narzędzia Docker Compose za pośrednictwem protokołu HTTPS