Metodo ICertAdmin::P ublishCRL (certadm.h)
Il metodo PublishCRL invia una richiesta all'autorità di certificazione di Servizi certificati (CA) per pubblicare un nuovo elenco di revoche di certificati (CRL). Questo metodo è stato introdotto per la prima volta nell'interfaccia ICertAdmin .
Sintassi
HRESULT PublishCRL(
[in] const BSTR strConfig,
[in] DATE Date
);
Parametri
[in] strConfig
Rappresenta una stringa di configurazione valida per la CA nel formato COMPUTERNAME\CANAME, dove COMPUTERNAME è il nome di rete del server Servizi certificati e CANAME è il nome comune dell'autorità di certificazione, come immesso durante l'installazione di Servizi certificati. Per informazioni sul nome della stringa di configurazione, vedere ICertConfig.
[in] Date
Specifica il valore di aggiornamento successivo della CRL in Coordinated Universal Time (Greenwich Mean Time). Se Date è diverso da zero, il valore di aggiornamento successivo per la CRL è Date, soggetto a arrotondamento o limiti di soffitto applicati dai servizi certificati. Se Date è zero, il valore di aggiornamento successivo del CRL viene calcolato dal periodo di pubblicazione CRL predefinito.
Valore restituito
VB
Se il metodo ha esito positivo, il metodo restituisce S_OK.Se il metodo ha esito negativo, restituisce un valore HRESULT che indica l'errore. Per un elenco di codici di errore comuni, vedere Valori HRESULT comuni.
Commenti
Le attività di amministrazione usano DCOM. Il codice che chiama questo metodo di interfaccia come definito in una versione precedente di Certadm.h verrà eseguito nei server basati su Windows purché il client e il server eseguano entrambi lo stesso sistema operativo Windows.
Esempio
Nell'esempio seguente viene illustrata la pubblicazione di un 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");
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Nessuno supportato |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | certadm.h (include Certsrv.h) |
Libreria | Certidl.lib |
DLL | Certadm.dll |