Metode ICertAdmin::P ublishCRL (certadm.h)

Metode PublishCRL mengirimkan permintaan ke otoritas sertifikasi Layanan Sertifikat (CA) untuk menerbitkan daftar pencabutan sertifikat (CRL) baru. Metode ini pertama kali diperkenalkan di antarmuka ICertAdmin .

Sintaks

HRESULT PublishCRL(
  [in] const BSTR strConfig,
  [in] DATE       Date
);

Parameter

[in] strConfig

Mewakili string konfigurasi yang valid untuk CA dalam bentuk COMPUTERNAME\CANAME, di mana COMPUTERNAME adalah nama jaringan server Certificate Services, dan CANAME adalah nama umum otoritas sertifikasi, seperti yang dimasukkan selama penyiapan Layanan Sertifikat. Untuk informasi tentang nama string konfigurasi, lihat ICertConfig.

PublishCRLpenting tidak menghapus cache internal saat string konfigurasi diubah. Saat Anda mengubah string konfigurasi untuk CA, Anda harus membuat instans objek ICertAdmin baru dan memanggil metode ini lagi dengan string konfigurasi baru.

 

[in] Date

Menentukan nilai pembaruan berikutnya dari CRL dalam Waktu Universal Terkoordinasi (Greenwich Mean Time). Jika Tanggal bukan nol, nilai pembaruan berikutnya untuk CRL adalah Tanggal, tunduk pada batas pembulatan atau langit-langit yang diberlakukan oleh Layanan Sertifikat. Jika Tanggal adalah nol, nilai pembaruan CRL berikutnya dihitung dari periode publikasi CRL default.

Nilai kembali

VB

Jika metode berhasil, metode akan mengembalikan S_OK.

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

Keterangan

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 keduanya menjalankan sistem operasi Windows yang sama.

Contoh

Contoh berikut menunjukkan penerbitan CRL.

    DATE ExpDate;  // CRL expiration date
    SYSTEMTIME st;
    BSTR bstrCA = NULL;

    //  Set the CRL Expiration Date to Noon on Jan. 1, 2005 GMT.
    //  Zero out values first 
	//  (avoids setting minutes, seconds, and so on).
    memset(&st, 0, sizeof(SYSTEMTIME));
    st.wYear = 2005;
    st.wMonth = 1;     // Jan
    st.wDay = 1;       // 1st day of month
    st.wHour = 12;     // Noon

    //  Place the date in required format.
    if (!SystemTimeToVariantTime(&st, &ExpDate))
    {
        printf("Unable to convert time\n");
        goto error;
    }

    bstrCA = SysAllocString(L"<COMPUTERNAMEHERE>\\<CANAMEHERE>");
    if (NULL == bstrCA)
    {
        printf("Memory allocation failed\n");
        goto error;
    }

    //  Publish the CRL.
    //  pCertAdmin is a previously instantiated ICertAdmin object.
    hr = pCertAdmin->PublishCRL(bstrCA, ExpDate);
    if (FAILED(hr))
    {
        printf("Failed PublishCRL [%x]\n", hr);
        goto error;
    }
    else
        printf("PublishCRL succeeded\n");

Persyaratan

Persyaratan Nilai
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

ICertConfig