Bagikan melalui


dotnet dev-certs

Artikel ini berlaku untuk: ️ .NET Core 3.1 SDK dan versi yang lebih baru

Nama

dotnet dev-certs - Menghasilkan sertifikat yang ditandatangani sendiri untuk mengaktifkan penggunaan HTTPS dalam pengembangan.

Sinopsis

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

Deskripsi

Perintah dotnet dev-certs mengelola sertifikat yang ditandatangani sendiri untuk mengaktifkan penggunaan HTTPS dalam pengembangan aplikasi web lokal. Fungsi utamanya adalah:

  • Membuat sertifikat untuk digunakan dengan titik akhir HTTPS selama pengembangan.
  • Mempercayai sertifikat yang dihasilkan pada komputer lokal.
  • Menghapus sertifikat yang dihasilkan dari komputer lokal.
  • Mengekspor sertifikat dalam berbagai format sehingga dapat digunakan oleh alat lain.
  • Mengimpor sertifikat yang ada yang dihasilkan oleh alat ke komputer lokal.

Perintah

  • https

    dotnet dev-certs hanya memiliki satu perintah: https. Perintah dotnet dev-certs https tanpa opsi memeriksa apakah sertifikat pengembangan ada di penyimpanan sertifikat pengguna saat ini di komputer. Jika perintah menemukan sertifikat pengembangan, perintah akan menampilkan pesan seperti contoh berikut:

    A valid HTTPS certificate is already present.
    

    Jika perintah tidak menemukan sertifikat pengembangan, perintah akan membuatnya di penyimpanan sertifikat pengguna saat ini, penyimpanan bernama My di lokasi CurrentUser. Lokasi fisik sertifikat adalah detail implementasi runtime .NET yang dapat berubah kapan saja. Pada macOS di .NET 7.0, sertifikat disimpan dalam rantai kunci pengguna dan sebagai file PFX: ~/.aspnet/https-aspnetcore-localhost-Thumbprint<[0..5]>.pfx.

    Setelah membuat sertifikat, perintah menampilkan pesan seperti contoh berikut:

    The HTTPS developer certificate was generated successfully.
    

    Secara default, sertifikat yang baru dibuat tidak tepercaya. Untuk mempercayai sertifikat, gunakan --trust opsi .

    Untuk membuat file yang bisa Anda gunakan dengan alat lain, gunakan opsi .--export-path

Opsi

  • -c|--check

    Memeriksa keberadaan sertifikat pengembangan tetapi tidak melakukan tindakan apa pun. Gunakan opsi ini dengan --trust opsi untuk memeriksa apakah sertifikat tidak hanya valid tetapi juga tepercaya.

  • --clean

    Menghapus semua sertifikat pengembangan HTTPS dari penyimpanan sertifikat dengan menggunakan API penyimpanan sertifikat .NET. Tidak menghapus file fisik apa pun yang dibuat dengan menggunakan --export-path opsi . Pada macOS di .NET 7.0, dotnet dev-certs perintah membuat sertifikat pada jalur pada disk, dan operasi pembersihan menghapus file sertifikat tersebut.

    Jika setidaknya ada satu sertifikat di penyimpanan sertifikat, perintah menampilkan pesan seperti contoh berikut:

    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>

    Mengekspor sertifikat ke file sehingga dapat digunakan oleh alat lain. Tentukan jalur lengkap ke file sertifikat yang diekspor, termasuk nama file. Jenis file sertifikat yang dibuat tergantung pada opsi mana yang digunakan dengan --export-path:

    Opsi Apa yang diekspor
    --export-path Bagian publik dari sertifikat sebagai file PFX.
    --export-path --format PEM Bagian publik dari sertifikat dalam format PEM. Tidak ada file .key terpisah yang dibuat.
    --export-path --password Bagian publik dan privat dari sertifikat sebagai file PFX.
    --export-path --password --format PEM Bagian publik dan privat dari sertifikat sebagai sepasang file dalam format PEM. File kunci memiliki ekstensi .key dan dilindungi oleh kata sandi yang diberikan.
    --export-path --no-password --format PEM Bagian publik dan privat dari sertifikat sebagai sepasang file dalam format PEM. File kunci memiliki ekstensi .key dan diekspor dalam teks biasa. Opsi --no-password ini hanya ditujukan untuk penggunaan pengujian internal.
    • --format

    Saat digunakan dengan --export-path, menentukan format file sertifikat yang diekspor. Nilai yang valid adalah PFX dan PEM, tidak peka huruf besar/kecil. PFX adalah default.

    Format file tidak bergantung pada ekstensi nama file. Misalnya, jika Anda menentukan --format pfx dan --export-path ./cert.pem, Anda akan mendapatkan file bernama cert.pem dalam PFX format.

    Untuk informasi tentang efek opsi ini saat digunakan dengan --password, , --no-passwordatau tanpa salah satu opsi tersebut, lihat --export-path sebelumnya di artikel ini.

  • -i|--import <PATH>

    Mengimpor sertifikat pengembangan HTTPS yang disediakan ke komputer lokal. Mengharuskan Anda juga menentukan --clean opsi , yang menghapus sertifikat pengembang HTTPS yang ada.

    PATH menentukan jalur ke file sertifikat PFX. Berikan kata sandi dengan --password opsi .

  • -np|--no-password

    Tidak menggunakan kata sandi untuk kunci saat mengekspor sertifikat ke file format PEM. File kunci diekspor dalam teks biasa. Opsi ini tidak berlaku untuk file PFX dan hanya ditujukan untuk penggunaan pengujian internal.

  • -p|--password

    Menentukan kata sandi yang akan digunakan:

    • Saat mengekspor sertifikat pengembangan ke file PFX atau PEM.
    • Saat mengimpor file PFX.

    Saat mengekspor dengan --format PEM, bagian publik dan privat sertifikat diekspor sebagai sepasang file dalam format PEM. File kunci memiliki ekstensi .key dan dilindungi oleh kata sandi yang diberikan. Selain nama file yang ditentukan untuk --export-path opsi , perintah membuat file lain di direktori yang sama dengan nama yang sama tetapi ekstensi .key . Misalnya, perintah berikut akan menghasilkan file bernama localhost.pem dan file bernama localhost.key di direktori /home/user :

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

    Dalam contoh, $CREDENTIAL_PLACEHOLDER$ mewakili kata sandi.

  • -q|--quiet

    Tampilkan peringatan dan kesalahan saja.

  • -t|--trust

    Mempercayai sertifikat pada komputer lokal.

    Jika opsi ini tidak ditentukan, sertifikat ditambahkan ke penyimpanan sertifikat tetapi tidak ke daftar tepercaya.

    Saat dikombinasikan --check dengan opsi , memvalidasi bahwa sertifikat tepercaya.

  • -v|--verbose

    Tampilkan informasi debug.

Contoh

  • Periksa keberadaan sertifikat pengembangan, dan buat sertifikat di penyimpanan sertifikat default jika belum ada. Tapi jangan percayai sertifikatnya.

    dotnet dev-certs https
    
  • Hapus sertifikat pengembangan apa pun yang sudah ada di komputer lokal.

    dotnet dev-certs https --clean
    
  • Mengimpor file PFX.

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

    Dalam contoh sebelumnya, $CREDENTIAL_PLACEHOLDER$ mewakili kata sandi.

  • Periksa apakah sertifikat pengembangan tepercaya ada di komputer lokal.

    dotnet dev-certs https --check --trust
    
  • Buat sertifikat, percayai, dan ekspor ke file PFX.

    dotnet dev-certs https -ep ./certificate.pfx -p $CREDENTIAL_PLACEHOLDER$ --trust
    
  • Buat sertifikat, percayai, dan ekspor ke file PEM.

    dotnet dev-certs https -ep ./certificate.crt --trust --format PEM
    
  • Buat sertifikat, percayai, dan ekspor ke file PEM termasuk kunci privat:

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

Lihat juga