Método ICertAdmin::P ublishCRL (certadm.h)
El método PublishCRL envía una solicitud a la entidad de certificación (CA) de Servicios de certificados para publicar una nueva lista de revocación de certificados (CRL). Este método se introdujo por primera vez en la interfaz ICertAdmin .
Sintaxis
HRESULT PublishCRL(
[in] const BSTR strConfig,
[in] DATE Date
);
Parámetros
[in] strConfig
Representa una cadena de configuración válida para la ENTIDAD de certificación con el formato COMPUTERNAME\CANAME, donde COMPUTERNAME es el nombre de red del servidor de Servicios de certificados y CANAME es el nombre común de la entidad de certificación, tal como se especifica durante la configuración de Servicios de certificados. Para obtener información sobre el nombre de la cadena de configuración, vea ICertConfig.
[in] Date
Especifica el siguiente valor de actualización de la CRL en hora universal coordinada (hora media de Greenwich). Si Date es distinto de cero, el siguiente valor de actualización para la CRL es Date, sujeto a límites de redondeo o límites máximos aplicados por Servicios de certificados. Si Date es cero, el siguiente valor de actualización de la CRL se calcula a partir del período de publicación de CRL predeterminado.
Valor devuelto
VB
Si el método se realiza correctamente, el método devuelve S_OK.Si se produce un error en el método, devuelve un valor HRESULT que indica el error. Para obtener una lista de códigos de error comunes, consulte Valores HRESULT comunes.
Comentarios
Las tareas de administración usan DCOM. El código que llama a este método de interfaz tal como se define en una versión anterior de Certadm.h se ejecutará en servidores basados en Windows siempre que el cliente y el servidor ejecuten el mismo sistema operativo Windows.
Ejemplos
En el ejemplo siguiente se muestra la publicación de una 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");
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | No se admite ninguno |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | certadm.h (incluya Certsrv.h) |
Library | Certidl.lib |
Archivo DLL | Certadm.dll |