Bagikan melalui


Metode ICertAdmin::GetRevocationReason (certadm.h)

Metode GetRevocationReason mengembalikan alasan sertifikat dicabut. Metode ini pertama kali didefinisikan dalam antarmuka ICertAdmin .

Sebelum Anda memanggil metode ini, Anda harus memanggil metode IsValidCertificate . Untuk informasi selengkapnya, lihat Keterangan.

Sintaks

HRESULT GetRevocationReason(
  [out] LONG *pReason
);

Parameter

[out] pReason

Penunjuk ke variabel yang akan menerima alasan pencabutan.

Menampilkan nilai

C++

Jika metode berhasil, metode mengembalikan S_OK, dan parameter pReason diatur ke salah satu nilai yang tercantum dalam tabel berikut.

Jika metode gagal, metode mengembalikan nilai HRESULT yang menunjukkan kesalahan. Untuk daftar kode kesalahan umum, lihat Nilai HRESULT Umum.

VB

Mengembalikan nilai yang menentukan alasan sertifikat dicabut. Nilainya bisa menjadi salah satu kode alasan pencabutan berikut (didefinisikan dalam Wincrypt.h).
Menampilkan kode Deskripsi
CRL_REASON_UNSPECIFIED
Tidak ada alasan yang ditentukan untuk pencabutan.
CRL_REASON_KEY_COMPROMISE
Diketahui atau dicurigai bahwa kunci privat subjek atau aspek lain dari subjek yang divalidasi dalam sertifikat disusupi.
CRL_REASON_CA_COMPROMISE
Diketahui atau dicurigai bahwa kunci privat CA atau aspek lain dari CA yang divalidasi dalam sertifikat disusupi.
CRL_REASON_AFFILIATION_CHANGED
Nama subjek atau informasi lain dalam sertifikat telah dimodifikasi tetapi tidak ada penyebab untuk mencurigai bahwa kunci privat telah disusupi.
CRL_REASON_SUPERSEDED
Sertifikat telah digantikan, tetapi tidak ada penyebab untuk mencurigai bahwa kunci privat telah disusupi.
CRL_REASON_CESSATION_OF_OPERATION
Sertifikat tidak lagi diperlukan untuk tujuan penerbitannya, tetapi tidak ada penyebab untuk mencurigai bahwa kunci privat telah disusupi.
CRL_REASON_CERTIFICATE_HOLD
Sertifikat telah ditangguhkan.

Keterangan

Sebelum Anda memanggil GetRevocationReason, panggil metode IsValidCertificate untuk mengambil disposisi sertifikat. Untuk memanggil GetRevocationReason, Anda harus menerima CA_DISP_REVOKED disposisi sertifikat dari panggilan sebelumnya ini, yang menunjukkan bahwa sertifikat telah dicabut. Panggilan ke IsValidCertificate menetapkan identitas sertifikat yang alasan pencabutannya ingin Anda ambil.

Tugas administrasi menggunakan DCOM. Kode yang memanggil metode antarmuka ini seperti yang didefinisikan dalam versi Certadm.h sebelumnya akan berjalan pada server berbasis Windows selama klien dan server menjalankan sistem operasi Windows yang sama.

Contoh

// The value for nDisp was set by 
// a call to ICertAdmin2::IsValidCertificate.
if (CA_DISP_REVOKED == nDisp)
{
    // Variable to contain revocation reason.
    long       nReason;

    // Retrieve the revocation reason.
    hr = pCertAdmin->GetRevocationReason(&nReason);
    if (FAILED(hr))
    {
        printf("Failed GetRevocationReason [%x]\n", hr);
        goto error;
    }
    else
        printf("Revocation reason = %d\n", nReason );
}

Persyaratan

   
Klien minimum yang didukung Tidak ada yang didukung
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header certadm.h (termasuk Certsrv.h)
Pustaka Certidl.lib
DLL Certadm.dll

Lihat juga

CCertAdmin

ICertAdmin

ICertAdmin2

IsValidCertificate