dotnet dev-certs
Este artigo aplica-se a: ✔️ SDK .NET Core 3.1 e versões posteriores
Name
dotnet dev-certs
- Gera um certificado autoassinado para permitir a utilização de HTTPS no desenvolvimento.
Sinopse
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
Description
O dotnet dev-certs
comando gere um certificado autoassinado para permitir a utilização de HTTPS no desenvolvimento de aplicações Web locais. As suas funções principais são:
- Gerar um certificado para utilização com pontos finais HTTPS durante o desenvolvimento.
- Confiar no certificado gerado no computador local.
- A remover o certificado gerado do computador local.
- Exportar um certificado em vários formatos para que possa ser utilizado por outras ferramentas.
- Importar um certificado existente gerado pela ferramenta para o computador local.
Comandos
https
dotnet dev-certs
tem apenas um comando:https
. Odotnet dev-certs https
comando sem opções verifica se um certificado de desenvolvimento está presente no arquivo de certificados do utilizador atual no computador. Se o comando encontrar um certificado de desenvolvimento, será apresentada uma mensagem semelhante ao seguinte exemplo:A valid HTTPS certificate is already present.
Se o comando não encontrar um certificado de desenvolvimento, cria um no arquivo de certificados do utilizador atual, o arquivo com o nome
My
na localizaçãoCurrentUser
. A localização física do certificado é um detalhe de implementação do runtime do .NET que pode ser alterado em qualquer altura. No macOS no .NET 7.0, o certificado é armazenado na cadeia de chaves de utilizador e como um ficheiro PFX: ~/.aspnet/https-aspnetcore-localhost-Thumbprint<[0..5]>.pfx.Depois de criar um certificado, o comando apresenta uma mensagem semelhante ao seguinte exemplo:
The HTTPS developer certificate was generated successfully.
Por predefinição, o certificado recentemente criado não é fidedigno. Para confiar no certificado, utilize a opção
--trust
.Para criar um ficheiro que pode utilizar com outras ferramentas, utilize a opção
--export-path
.
Opções
-c|--check
Verifica a existência do certificado de desenvolvimento, mas não executa nenhuma ação. Utilize esta opção com a opção
--trust
para verificar se o certificado não só é válido como também é fidedigno.--clean
Remove todos os certificados de desenvolvimento HTTPS do arquivo de certificados com a API de arquivo de certificados .NET. Não remove quaisquer ficheiros físicos que tenham sido criados com a opção
--export-path
. No macOS no .NET 7.0, odotnet dev-certs
comando cria o certificado num caminho no disco e a operação de limpeza remove esse ficheiro de certificado.Se existir, pelo menos, um certificado no arquivo de certificados, o comando apresenta uma mensagem semelhante ao seguinte exemplo:
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>
Exporta o certificado para um ficheiro para que possa ser utilizado por outras ferramentas. Especifique o caminho completo para o ficheiro de certificado exportado, incluindo o nome do ficheiro. O tipo de ficheiros de certificado criados depende das opções que são utilizadas com
--export-path
:Opções O que é exportado --export-path
A parte pública do certificado como um ficheiro PFX. --export-path --format PEM
A parte pública do certificado no formato PEM. Não é criado nenhum ficheiro .key separado. --export-path --password
As partes públicas e privadas do certificado como um ficheiro PFX. --export-path --password --format PEM
As partes públicas e privadas do certificado como um par de ficheiros no formato PEM. O ficheiro de chave tem a extensão .key e está protegido pela palavra-passe especificada. --export-path --no-password --format PEM
As partes públicas e privadas do certificado como um par de ficheiros no formato PEM. O ficheiro de chave tem a extensão .key e é exportado em texto simples. A --no-password
opção destina-se apenas à utilização de testes internos.--format
Quando utilizado com
--export-path
, especifica o formato do ficheiro de certificado exportado. Os valores válidos sãoPFX
e , não são sensíveis a maiúsculas ePEM
minúsculas.PFX
é a predefinição.O formato de ficheiro é independente da extensão de nome de ficheiro. Por exemplo, se especificar
--format pfx
e--export-path ./cert.pem
, obterá um ficheiro com o nome cert.pem noPFX
formato .Para obter informações sobre o efeito desta opção quando utilizada com
--password
,--no-password
ou sem qualquer uma dessas opções, consulte --export-path anteriormente neste artigo.-i|--import <PATH>
Importa o certificado de desenvolvimento HTTPS fornecido para o computador local. Requer que também especifique a opção
--clean
, que limpa quaisquer certificados de programador HTTPS existentes.PATH
especifica um caminho para um ficheiro de certificado PFX. Forneça a palavra-passe com a opção--password
.-np|--no-password
Não utiliza uma palavra-passe para a chave ao exportar um certificado para ficheiros de formato PEM. O ficheiro de chave é exportado em texto simples. Esta opção não é aplicável a ficheiros PFX e destina-se apenas à utilização de testes internos.
-p|--password
Especifica a palavra-passe a utilizar:
- Ao exportar o certificado de desenvolvimento para um ficheiro PFX ou PEM.
- Ao importar um ficheiro PFX.
Ao exportar com
--format PEM
, as partes públicas e privadas do certificado são exportadas como um par de ficheiros no formato PEM. O ficheiro de chave tem a extensão .key e está protegido pela palavra-passe especificada. Além do nome de ficheiro especificado para a opção--export-path
, o comando cria outro ficheiro no mesmo diretório com o mesmo nome, mas uma extensão .key . Por exemplo, o seguinte comando irá gerar um ficheiro com o nome localhost.pem e um ficheiro com o nome localhost.key no diretório /home/user :dotnet dev-certs https --format pem -ep /home/user/localhost.pem -p $CREDENTIAL_PLACEHOLDER$
No exemplo,
$CREDENTIAL_PLACEHOLDER$
representa uma palavra-passe.-q|--quiet
Apresentar apenas avisos e erros.
-t|--trust
Confia no certificado no computador local.
Se esta opção não for especificada, o certificado é adicionado ao arquivo de certificados, mas não a uma lista fidedigna.
Quando combinado com a opção
--check
, valida se o certificado é fidedigno.-v|--verbose
Apresentar informações de depuração.
Exemplos
Verifique a presença de um certificado de desenvolvimento e crie um no arquivo de certificados predefinido se ainda não existir um. Mas não confie no certificado.
dotnet dev-certs https
Remova quaisquer certificados de desenvolvimento que já existam no computador local.
dotnet dev-certs https --clean
Importar um ficheiro PFX.
dotnet dev-certs https --clean --import ./certificate.pfx -p $CREDENTIAL_PLACEHOLDER$
No exemplo anterior,
$CREDENTIAL_PLACEHOLDER$
representa uma palavra-passe.Verifique se está presente um certificado de desenvolvimento fidedigno no computador local.
dotnet dev-certs https --check --trust
Crie um certificado, confie no mesmo e exporte-o para um ficheiro PFX.
dotnet dev-certs https -ep ./certificate.pfx -p $CREDENTIAL_PLACEHOLDER$ --trust
Crie um certificado, confie no mesmo e exporte-o para um ficheiro PEM.
dotnet dev-certs https -ep ./certificate.crt --trust --format PEM
Crie um certificado, confie no mesmo e exporte-o para um ficheiro PEM, incluindo a chave privada:
dotnet dev-certs https -ep ./certificate.crt -p $CREDENTIAL_PLACEHOLDER$ --trust --format PEM