Metode ICertAdmin::D enyRequest (certadm.h)
Metode DenyRequest menolak permintaan sertifikat tertentu yang tertunda. Metode ini pertama kali didefinisikan dalam antarmuka ICertAdmin .
Agar metode ini berhasil, permintaan sertifikat harus tertunda.
Sintaks
HRESULT DenyRequest(
[in] const BSTR strConfig,
[in] LONG RequestId
);
Parameter
[in] strConfig
Mewakili string konfigurasi yang valid untuk otoritas sertifikasi (CA) dalam bentuk COMPUTERNAME\CANAME di mana COMPUTERNAME adalah nama jaringan server Layanan Sertifikat dan CANAME adalah nama umum otoritas sertifikasi seperti yang dimasukkan selama penyiapan Layanan Sertifikat. Untuk informasi tentang string konfigurasi, lihat ICertConfig.
[in] RequestId
Menentukan ID permintaan yang tertunda untuk ditolak.
Nilai kembali
Tidak ada
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 mendeklarasikan variabel yang diperlukan, menginisialisasi COM, dan membuat instans kelas CertAdmin. Kemudian memanggil DenyRequest dan mencetak keberhasilan atau kegagalan ke layar. Akhirnya, ini membebaskan sumber daya.
// Pointer to an interface object.
ICertAdmin * pCertAdmin = NULL;
BSTR bstrCA = NULL; // variable for machine\CAName
long nReqID; // variable for Request ID
HRESULT hr;
// Initialize COM.
hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);
if (FAILED(hr))
{
printf("Failed CoInitializeEx [%x]\n", hr);
goto error;
}
// Create the CertAdmin object
// and get a pointer to its ICertAdmin interface.
hr = CoCreateInstance( CLSID_CCertAdmin,
NULL,
CLSCTX_INPROC_SERVER,
IID_ICertAdmin,
(void **)&pCertAdmin);
if (FAILED(hr))
{
printf("Failed CoCreateInstance pCertAdmin [%x]\n", hr);
goto error;
}
// Note the use of two '\' in C++ to produce one '\'.
bstrCA = SysAllocString(L"<COMPUTERNAMEHERE>\\<CANAMEHERE>");
if (NULL == bstrCA)
{
printf("Failed to allocate memory for bstrCA\n");
goto error;
}
// nReqID is RequestID to be denied.
nReqID = <REQUESTIDHERE>;
// Deny the request.
hr = pCertAdmin->DenyRequest( bstrCA, nReqID );
if (FAILED(hr))
{
printf("Failed DenyRequest %ws %d [%x]\n",
bstrCA, nReqID, hr);
goto error;
}
else
printf("Denied request %ws %d\n",
bstrCA, nReqID );
// Done processing.
error:
// Free BSTR values.
if (NULL != bstrCA)
SysFreeString(bstrCA);
// Clean up object resources.
if (NULL != pCertAdmin)
pCertAdmin->Release();
// Free COM resources.
CoUninitialize();
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
ICertAdmin2
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk