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. O dotnet 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ção CurrentUser. 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, o dotnet 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ão PFX e , não são sensíveis a maiúsculas e PEMminú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 no PFX formato .

    Para obter informações sobre o efeito desta opção quando utilizada com --password, --no-passwordou 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
    

Ver também