Certmgr.exe (Alat Pengelola Sertifikat)
Alat Pengelola Sertifikat (Certmgr.exe) mengelola sertifikat, daftar kepercayaan sertifikat (CTL), dan daftar pencabutan sertifikat (CRL).
Pengelola Sertifikat diinstal dengan Windows 10 SDK. Untuk memulai alat, gunakan Perintah Pengembang Visual Studio atau PowerShell Pengembang Visual Studio.
Catatan
Alat Pengelola Sertifikat (Certmgr.exe) adalah utilitas baris perintah, sedangkan Sertifikat (Certmgr.msc) adalah snap-in Konsol Manajemen Microsoft (MMC). Karena Certmgr.msc biasanya ditemukan di direktori Sistem Windows, memasukkan certmgr
di baris perintah dapat memuat snap-in MMC Sertifikat meskipun Anda telah membuka Prompt Perintah Pengembang untuk Visual Studio. Ini terjadi karena jalur ke snap-in mendahului jalur ke alat Pengelola Sertifikat dalam Path
variabel lingkungan. Jika Anda mengalami masalah ini, Anda dapat menjalankan perintah Certmgr.exe dengan menentukan jalur ke yang dapat dieksekusi, misalnya, %ProgramFiles(x86)%\Windows Kits\10\bin\10.0.22000.0\arm64\certmgr.exe.
Untuk gambaran umum sertifikat X.509, lihat Bekerja dengan Sertifikat.
Sintaks
Pada prompt perintah, masukkan yang berikut ini:
certmgr [/add | /del | /put] [options]
[/s[/r registryLocation]] [sourceStorename]
[/s[/r registryLocation]] [destinationStorename]
Parameter
Argumen | Deskripsi |
---|---|
sourceStorename | Penyimpanan sertifikat yang berisi sertifikat, CTL, atau CRL yang sudah ada untuk ditambahkan, dihapus, disimpan, atau ditampilkan. Ini bisa berupa file penyimpanan atau penyimpanan sistem. |
destinationStorename | Penyimpanan atau file sertifikat keluaran. |
Opsi | Deskripsi |
---|---|
/add | Menambahkan sertifikat, CTL, dan CRL ke penyimpanan sertifikat. |
/all | Menambahkan semua entri saat digunakan dengan /add. Menghapus semua entri saat digunakan dengan /del. Menampilkan semua entri saat digunakan tanpa opsi /add atau /del. Opsi /all tidak dapat digunakan dengan /put. |
c | Menambahkan sertifikat saat digunakan dengan /add. Menghapus sertifikat saat digunakan dengan /del. Menyimpan sertifikat saat digunakan dengan /put. Menampilkan sertifikat saat digunakan tanpa opsi /add, /del, atau /put. |
CRL | Menambahkan CRL saat digunakan dengan /add. Menghapus CRL saat digunakan dengan /del. Menyimpan CRL saat digunakan dengan /put. Menampilkan CRL saat digunakan tanpa opsi /add, /del, atau /put. |
/CTL | Menambahkan CTL saat digunakan dengan /add. Menghapus CTL saat digunakan dengan /del. Menyimpan CTL saat digunakan dengan /put. Menampilkan CTL saat digunakan tanpa opsi /add, /del, atau /put. |
/del | Menghapus sertifikat, CTL, dan CRL dari penyimpanan sertifikat. |
/e encodingType | Menentukan jenis pengodean sertifikat. Default adalah X509_ASN_ENCODING . |
/f dwFlags | Menentukan penyimpanan bendera terbuka. Ini adalah parameter dwFlags yang diteruskan ke CertOpenStore. Nilai defaultnya adalah CERT_SYSTEM_STORE_CURRENT_USER. Opsi ini dipertimbangkan hanya jika opsi /y digunakan. |
/h[elp] | Menampilkan sintaks perintah dan opsi untuk alat ini. |
/n nam | Menentukan nama umum sertifikat yang akan ditambahkan, dihapus, atau disimpan. Opsi ini hanya dapat digunakan dengan sertifikat; itu tidak dapat digunakan dengan CTL atau CRL. |
/put | Menyimpan sertifikat X.509, CTL, atau CRL dari penyimpanan sertifikat ke file. File disimpan dalam format X.509. Anda dapat menggunakan opsi /7 dengan opsi /put untuk menyimpan file dalam format PKCS #7. Opsi /put harus diikuti oleh /c, /CTL, atau /CRL. Opsi /all tidak dapat digunakan dengan /put. |
/r lokasi | Mengidentifikasi lokasi registri dari penyimpanan sistem. Opsi ini dipertimbangkan hanya jika Anda menentukan opsi /s. lokasi harus salah satu dari berikut ini: - currentUser menunjukkan bahwa penyimpanan sertifikat berada di bawah kunci HKEY_CURRENT_USER. Ini adalah default.- localMachine menunjukkan bahwa penyimpanan sertifikat berada di bawah kunci HKEY_LOCAL_MACHINE. |
/dtk | Menunjukkan bahwa penyimpanan sertifikat adalah penyimpanan sistem. Jika Anda tidak menentukan opsi ini, penyimpanan dianggap sebagai StoreFile. |
/sha1 sha1Hash | Menentukan hash SHA1 dari sertifikat, CTL, atau CRL untuk ditambahkan, dihapus, atau disimpan. |
/v | Menentukan mode verbose; menampilkan informasi rinci tentang sertifikat, CTL, dan CRL. Opsi ini tidak dapat digunakan dengan opsi /add, /del, atau /put. |
Penyedia /y | Menentukan nama penyedia penyimpanan. |
/7 | Menyimpan toko tujuan sebagai objek PKCS #7. |
/? | Menampilkan sintaks perintah dan opsi untuk alat ini. |
Keterangan
Certmgr.exe melakukan fungsi dasar berikut:
- Menampilkan sertifikat, CTL, dan CRL ke konsol.
- Menambahkan sertifikat, CTL, dan CRL ke penyimpanan sertifikat.
- Menghapus sertifikat, CTL, dan CRL dari penyimpanan sertifikat.
- Menyimpan sertifikat X.509, CTL, atau CRL dari penyimpanan sertifikat ke file.
Certmgr.exe bekerja dengan dua jenis penyimpanan sertifikat: StoreFile dan penyimpanan sistem. Tidak perlu menentukan jenis penyimpanan sertifikat; Certmgr.exe dapat mengidentifikasi jenis penyimpanan dan melakukan operasi yang sesuai.
Menjalankan Certmgr.exe tanpa menentukan opsi apa pun akan meluncurkan snap-in certmgr.msc, yang memiliki GUI yang membantu tugas manajemen sertifikat yang juga tersedia dari baris perintah. GUI menyediakan wizard impor, yang menyalin sertifikat, CTL, dan CRL dari disk Anda ke penyimpanan sertifikat.
Anda dapat menemukan nama penyimpanan X509Certificate untuk parameter sourceStorename
dan destinationStorename
dengan mengompilasi dan menjalankan kode berikut.
using System;
using System.Security.Cryptography.X509Certificates;
public class Example
{
public static void Main()
{
foreach (var storeValue in Enum.GetValues(typeof(StoreName))) {
X509Store store = new X509Store((StoreName) storeValue);
store.Open(OpenFlags.ReadOnly);
Console.WriteLine(store.Name);
}
}
}
Imports System.Security.Cryptography.X509Certificates
Module Example
Public Sub Main()
For Each storeValue In [Enum].GetValues(GetType(StoreName))
Dim store As New X509Store(CType(storeValue, StoreName))
store.Open(OpenFlags.ReadOnly)
Console.WriteLine(store.Name)
Next
End Sub
End Module
Untuk informasi selengkapnya mengenai sertifikat, lihat Bekerja dengan Sertifikat.
Contoh
Perintah berikut menampilkan penyimpanan sistem default yang disebut my
dengan keluaran verbose.
certmgr /v /s my
Perintah berikut menambahkan semua sertifikat dalam file bernama myFile.ext
ke file baru bernama newFile.ext
.
certmgr /add /all /c myFile.ext newFile.ext
Perintah berikut menambahkan sertifikat dalam file bernama testcert.cer
ke penyimpanan sistem my
.
certmgr /add /c testcert.cer /s my
Perintah berikut menambahkan sertifikat dalam file bernama TrustedCert.cer
ke penyimpanan sertifikat akar.
certmgr /c /add TrustedCert.cer /s root
Perintah berikut menyimpan sertifikat dengan nama umum myCert
di penyimpanan sistem my
ke file bernama newCert.cer
.
certmgr /add /c /n myCert /s my newCert.cer
Perintah berikut menghapus semua CTL di penyimpanan sistem my
dan menyimpan hasil penyimpanan ke file bernama newStore.str
.
certmgr /del /all /ctl /s my newStore.str
Perintah berikut menyimpan sertifikat di my
penyimpanan sistem dalam file newFile
. Anda akan diminta untuk memasukkan nomor sertifikat dari my
untuk dimasukkan ke dalam newFile
.
certmgr /put /c /s my newFile