dotnet dev-certs
Dit artikel is van toepassing op: ✔️ .NET Core 3.1 SDK en latere versies
Naam
dotnet dev-certs
- Genereert een zelfondertekend certificaat om HTTPS-gebruik in ontwikkeling in te schakelen.
Synopsis
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
Beschrijving
Met de dotnet dev-certs
opdracht wordt een zelfondertekend certificaat beheerd om HTTPS-gebruik in te schakelen in de ontwikkeling van lokale web-apps. De belangrijkste functies zijn:
- Een certificaat genereren voor gebruik met HTTPS-eindpunten tijdens de ontwikkeling.
- Het gegenereerde certificaat op de lokale computer vertrouwen.
- Het gegenereerde certificaat verwijderen van de lokale computer.
- Een certificaat in verschillende indelingen exporteren, zodat het door andere hulpprogramma's kan worden gebruikt.
- Het importeren van een bestaand certificaat dat door het hulpprogramma is gegenereerd in de lokale computer.
Opdracht
https
dotnet dev-certs
heeft slechts één opdracht:https
. Metdotnet dev-certs https
de opdracht zonder opties wordt gecontroleerd of een ontwikkelingscertificaat aanwezig is in het certificaatarchief van de huidige gebruiker op de computer. Als met de opdracht een ontwikkelingscertificaat wordt gevonden, wordt een bericht weergegeven zoals in het volgende voorbeeld:A valid HTTPS certificate is already present.
Als de opdracht geen ontwikkelingscertificaat vindt, wordt er een gemaakt in het certificaatarchief van de huidige gebruiker, het archief met de naam
My
op de locatieCurrentUser
. De fysieke locatie van het certificaat is een implementatiedetail van de .NET-runtime die op elk gewenst moment kan worden gewijzigd. Op macOS in .NET 7.0 wordt het certificaat opgeslagen in de gebruikerssleutelketen en als pfx-bestand: ~/.aspnet/https-aspnetcore-localhost-Thumbprint<[0..5]>.pfx.Nadat u een certificaat hebt gemaakt, wordt met de opdracht een bericht weergegeven zoals in het volgende voorbeeld:
The HTTPS developer certificate was generated successfully.
Standaard wordt het zojuist gemaakte certificaat niet vertrouwd. Gebruik de
--trust
optie om het certificaat te vertrouwen.Als u een bestand wilt maken dat u met andere hulpprogramma's kunt gebruiken, gebruikt u de
--export-path
optie.
Opties
-c|--check
Controleert op het bestaan van het ontwikkelingscertificaat, maar er wordt geen actie uitgevoerd. Gebruik deze optie met de
--trust
optie om te controleren of het certificaat niet alleen geldig maar ook vertrouwd is.--clean
Verwijdert alle HTTPS-ontwikkelingscertificaten uit het certificaatarchief met behulp van de API voor het .NET-certificaatarchief. Verwijdert geen fysieke bestanden die zijn gemaakt met behulp van de
--export-path
optie. In macOS in .NET 7.0 wordt met dedotnet dev-certs
opdracht het certificaat op een pad op schijf gemaakt en wordt dat certificaatbestand verwijderd.Als er ten minste één certificaat in het certificaatarchief staat, wordt met de opdracht een bericht weergegeven zoals in het volgende voorbeeld:
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>
Hiermee exporteert u het certificaat naar een bestand, zodat het door andere hulpprogramma's kan worden gebruikt. Geef het volledige pad naar het geëxporteerde certificaatbestand op, inclusief de bestandsnaam. Het type certificaatbestanden dat wordt gemaakt, is afhankelijk van de opties die worden gebruikt met
--export-path
:Opties Wat wordt geëxporteerd --export-path
Het openbare deel van het certificaat als een PFX-bestand. --export-path --format PEM
Het openbare deel van het certificaat in PEM-indeling. Er wordt geen afzonderlijk .key-bestand gemaakt. --export-path --password
De openbare en persoonlijke delen van het certificaat als pfx-bestand. --export-path --password --format PEM
De openbare en persoonlijke delen van het certificaat als een paar bestanden in PEM-indeling. Het sleutelbestand heeft de extensie .key en wordt beveiligd door het opgegeven wachtwoord. --export-path --no-password --format PEM
De openbare en persoonlijke delen van het certificaat als een paar bestanden in PEM-indeling. Het sleutelbestand heeft de extensie .key en wordt geëxporteerd als tekst zonder opmaak. De --no-password
optie is alleen bedoeld voor intern testgebruik.--format
Bij gebruik met
--export-path
geeft u de indeling van het geëxporteerde certificaatbestand op. Geldige waarden zijnPFX
enPEM
, niet hoofdlettergevoelig.PFX
is de standaardwaarde.De bestandsindeling is onafhankelijk van de bestandsextensie. Als u bijvoorbeeld en opgeeft
--format pfx
--export-path ./cert.pem
, krijgt u een bestand met de naam cert.pem inPFX
de indeling.Zie --export-path eerder in dit artikel voor informatie over het effect van deze optie bij gebruik
--password
met ,--no-password
of zonder een van deze opties.-i|--import <PATH>
Hiermee importeert u het opgegeven HTTPS-ontwikkelingscertificaat op de lokale computer. Vereist dat u ook de
--clean
optie opgeeft, waarmee eventuele bestaande HTTPS-ontwikkelaarscertificaten worden gewist.PATH
hiermee geeft u een pad naar een PFX-certificaatbestand. Geef de optie op voor het--password
wachtwoord.-np|--no-password
Gebruikt geen wachtwoord voor de sleutel bij het exporteren van een certificaat naar PEM-indelingsbestanden. Het sleutelbestand wordt geëxporteerd als tekst zonder opmaak. Deze optie is niet van toepassing op PFX-bestanden en is alleen bedoeld voor intern testgebruik.
-p|--password
Hiermee geeft u het wachtwoord op dat moet worden gebruikt:
- Bij het exporteren van het ontwikkelingscertificaat naar een PFX- of PEM-bestand.
- Bij het importeren van een PFX-bestand.
Bij het exporteren met
--format PEM
worden de openbare en persoonlijke delen van het certificaat geëxporteerd als een paar bestanden in PEM-indeling. Het sleutelbestand heeft de extensie .key en wordt beveiligd door het opgegeven wachtwoord. Naast de bestandsnaam die is opgegeven voor de--export-path
optie, maakt de opdracht een ander bestand in dezelfde map met dezelfde naam, maar met de extensie .key . Met de volgende opdracht wordt bijvoorbeeld een bestand met de naam localhost.pem en een bestand met de naam localhost.key gegenereerd in de map /home/user :dotnet dev-certs https --format pem -ep /home/user/localhost.pem -p $CREDENTIAL_PLACEHOLDER$
In het voorbeeld
$CREDENTIAL_PLACEHOLDER$
vertegenwoordigt u een wachtwoord.-q|--quiet
Alleen waarschuwingen en fouten weergeven.
-t|--trust
Vertrouwt het certificaat op de lokale computer.
Als deze optie niet is opgegeven, wordt het certificaat toegevoegd aan het certificaatarchief, maar niet aan een vertrouwde lijst.
In combinatie met de
--check
optie wordt gevalideerd of het certificaat wordt vertrouwd.-v|--verbose
Foutopsporingsgegevens weergeven.
Voorbeelden
Controleer op de aanwezigheid van een ontwikkelingscertificaat en maak er een in het standaardcertificaatarchief als dit nog niet bestaat. Maar vertrouw het certificaat niet.
dotnet dev-certs https
Verwijder alle ontwikkelingscertificaten die al aanwezig zijn op de lokale computer.
dotnet dev-certs https --clean
Een PFX-bestand importeren.
dotnet dev-certs https --clean --import ./certificate.pfx -p $CREDENTIAL_PLACEHOLDER$
In het voorgaande voorbeeld
$CREDENTIAL_PLACEHOLDER$
vertegenwoordigt een wachtwoord.Controleer of er een vertrouwd ontwikkelingscertificaat aanwezig is op de lokale computer.
dotnet dev-certs https --check --trust
Maak een certificaat, vertrouw het en exporteer het naar een PFX-bestand.
dotnet dev-certs https -ep ./certificate.pfx -p $CREDENTIAL_PLACEHOLDER$ --trust
Maak een certificaat, vertrouw het en exporteer het naar een PEM-bestand.
dotnet dev-certs https -ep ./certificate.crt --trust --format PEM
Maak een certificaat, vertrouw het en exporteer het naar een PEM-bestand, inclusief de persoonlijke sleutel:
dotnet dev-certs https -ep ./certificate.crt -p $CREDENTIAL_PLACEHOLDER$ --trust --format PEM