dotnet dev-certs

Bu makale şunlar için geçerlidir: ✔️ .NET Core 3.1 SDK ve sonraki sürümler

Name

dotnet dev-certs - Geliştirme aşamasında HTTPS kullanımını etkinleştirmek için otomatik olarak imzalanan bir sertifika oluşturur.

Özet

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

komutu, dotnet dev-certs yerel web uygulaması geliştirmede HTTPS kullanımını etkinleştirmek için otomatik olarak imzalanan bir sertifikayı yönetir. Ana işlevleri şunlardır:

  • Geliştirme sırasında HTTPS uç noktalarıyla kullanmak üzere bir sertifika oluşturma.
  • Yerel makinede oluşturulan sertifikaya güvenme.
  • Oluşturulan sertifika yerel makineden kaldırılıyor.
  • Sertifikayı diğer araçlar tarafından kullanılabilmesi için çeşitli biçimlerde dışarı aktarma.
  • Araç tarafından oluşturulan mevcut bir sertifikayı yerel makineye aktarma.

Komutlar

  • https

    dotnet dev-certs yalnızca bir komutu vardır: https. Seçenekleri dotnet dev-certs https olmayan komut, makinedeki geçerli kullanıcının sertifika deposunda bir geliştirme sertifikası olup olmadığını denetler. Komut bir geliştirme sertifikası bulursa, aşağıdaki örneğe benzer bir ileti görüntüler:

    A valid HTTPS certificate is already present.
    

    Komut bir geliştirme sertifikası bulamazsa, geçerli kullanıcının sertifika deposunda (konumunda CurrentUseradlı My depo) bir sertifika oluşturur. Sertifikanın fiziksel konumu, .NET çalışma zamanının herhangi bir zamanda değişebilen bir uygulama ayrıntısıdır. .NET 7.0'daki macOS'ta sertifika, kullanıcı anahtar zincirinde ve bir PFX dosyası olarak depolanır: ~/.aspnet/https-aspnetcore-localhost-Thumbprint<[0..5]>.pfx.

    Bir sertifika oluşturduktan sonra komut aşağıdaki örneğe benzer bir ileti görüntüler:

    The HTTPS developer certificate was generated successfully.
    

    Varsayılan olarak, yeni oluşturulan sertifikaya güvenilmez. Sertifikaya güvenmek için seçeneğini kullanın --trust .

    Diğer araçlarla birlikte kullanabileceğiniz bir dosya oluşturmak için seçeneğini kullanın --export-path .

Seçenekler

  • -c|--check

    Geliştirme sertifikasının varlığını denetler ancak herhangi bir eylem gerçekleştirmez. Sertifikanın --trust yalnızca geçerli değil, aynı zamanda güvenilir olup olmadığını denetleme seçeneğiyle birlikte bu seçeneği kullanın.

  • --clean

    .NET sertifika deposu API'sini kullanarak sertifika deposundan tüm HTTPS geliştirme sertifikalarını kaldırır. seçeneği kullanılarak --export-path oluşturulan hiçbir fiziksel dosyayı kaldırmaz. .NET 7.0'daki dotnet dev-certs macOS'ta, komut sertifikayı diskteki bir yolda oluşturur ve temizleme işlemi bu sertifika dosyasını kaldırır.

    Sertifika deposunda en az bir sertifika varsa, komut aşağıdaki örneğe benzer bir ileti görüntüler:

    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>

    Sertifikayı, diğer araçlar tarafından kullanılabilmesi için bir dosyaya aktarır. Dosya adı da dahil olmak üzere dışarı aktarılan sertifika dosyasının tam yolunu belirtin. Oluşturulan sertifika dosyalarının türü, ile --export-pathhangi seçeneklerin kullanıldığına bağlıdır:

    Seçenekler Dışarı aktarılanlar
    --export-path Sertifikanın PFX dosyası olarak ortak bölümü.
    --export-path --format PEM Sertifikanın PEM biçimindeki ortak bölümü. Ayrı bir .key dosyası oluşturulmaz.
    --export-path --password PfX dosyası olarak sertifikanın genel ve özel bölümleri.
    --export-path --password --format PEM PeM biçiminde bir dosya çifti olarak sertifikanın genel ve özel bölümleri. Anahtar dosyası .key uzantısına sahiptir ve verilen parolayla korunur.
    --export-path --no-password --format PEM PeM biçiminde bir dosya çifti olarak sertifikanın genel ve özel bölümleri. Anahtar dosyası .key uzantısına sahiptir ve düz metin olarak dışarı aktarılır. Bu --no-password seçenek yalnızca iç test kullanımına yöneliktir.
    • --format

    ile --export-pathkullanıldığında, dışarı aktarılan sertifika dosyasının biçimini belirtir. Geçerli değerler ve PFXPEM, büyük/küçük harfe duyarlı değildir. PFX varsayılan değerdir.

    Dosya biçimi, dosya adı uzantısından bağımsızdır. Örneğin, ve --export-path ./cert.pembelirtirseniz --format pfx, biçiminde cert.pemPFX adlı bir dosya alırsınız.

    , veya --password--no-passwordbu seçeneklerden biri olmadan kullanıldığında bu seçeneğin etkisi hakkında bilgi için bu makalenin önceki bölümlerindeki --export-path bölümüne bakın.

  • -i|--import <PATH>

    Sağlanan HTTPS geliştirme sertifikasını yerel makineye aktarır. Mevcut HTTPS geliştirici sertifikalarını temizleyen seçeneği de belirtmenizi --clean gerektirir.

    PATH PFX sertifika dosyasının yolunu belirtir. Seçeneğiyle birlikte parolayı --password belirtin.

  • -np|--no-password

    Sertifikayı PEM biçim dosyalarına aktarırken anahtar için parola kullanmaz. Anahtar dosyası düz metin olarak dışarı aktarılır. Bu seçenek PFX dosyaları için geçerli değildir ve yalnızca dahili test kullanımına yöneliktir.

  • -p|--password

    Kullanılacak parolayı belirtir:

    • Geliştirme sertifikasını PFX veya PEM dosyasına aktarırken.
    • PFX dosyasını içeri aktarırken.

    ile --format PEMdışarı aktarılırken, sertifikanın genel ve özel bölümleri PEM biçiminde bir dosya çifti olarak dışarı aktarılır. Anahtar dosyası .key uzantısına sahiptir ve verilen parolayla korunur. seçeneği için --export-path belirtilen dosya adına ek olarak, komut aynı dizinde aynı ada ancak bir .key uzantısına sahip başka bir dosya oluşturur. Örneğin, aşağıdaki komut localhost.pem adlı bir dosya ve /home/user dizininde localhost.key adlı bir dosya oluşturur:

    dotnet dev-certs https --format pem -ep /home/user/localhost.pem -p $CREDENTIAL_PLACEHOLDER$
    

    Örnekte bir $CREDENTIAL_PLACEHOLDER$ parolayı temsil eder.

  • -q|--quiet

    Yalnızca uyarıları ve hataları görüntüleyin.

  • -t|--trust

    Yerel makinedeki sertifikaya güvenir.

    Bu seçenek belirtilmezse, sertifika sertifika deposuna eklenir ancak güvenilen listeye eklenmez.

    seçeneğiyle --check birleştirildiğinde sertifikanın güvenilir olduğunu doğrular.

  • -v|--verbose

    Hata ayıklama bilgilerini görüntüleme.

Örnekler

  • Geliştirme sertifikası olup olmadığını denetleyin ve henüz yoksa varsayılan sertifika deposunda bir sertifika oluşturun. Ancak sertifikaya güvenmeyin.

    dotnet dev-certs https
    
  • Yerel makinede zaten var olan tüm geliştirme sertifikalarını kaldırın.

    dotnet dev-certs https --clean
    
  • PFX dosyasını içeri aktar.

    dotnet dev-certs https --clean --import ./certificate.pfx -p $CREDENTIAL_PLACEHOLDER$
    

    Önceki örnekte bir $CREDENTIAL_PLACEHOLDER$ parolayı temsil eder.

  • Yerel makinede güvenilir bir geliştirme sertifikası olup olmadığını denetleyin.

    dotnet dev-certs https --check --trust
    
  • Bir sertifika oluşturun, sertifikaya güvenin ve bir PFX dosyasına aktarın.

    dotnet dev-certs https -ep ./certificate.pfx -p $CREDENTIAL_PLACEHOLDER$ --trust
    
  • Bir sertifika oluşturun, sertifikaya güvenin ve bir PEM dosyasına aktarın.

    dotnet dev-certs https -ep ./certificate.crt --trust --format PEM
    
  • Sertifika oluşturun, sertifikaya güvenin ve özel anahtar dahil bir PEM dosyasına aktarın:

    dotnet dev-certs https -ep ./certificate.crt -p $CREDENTIAL_PLACEHOLDER$ --trust --format PEM
    

Ayrıca bkz.