Compartir a través de


Método ICertServerPolicy::GetRequestProperty (certif.h)

El método GetRequestProperty recupera una propiedad específica de una solicitud.

Sintaxis

HRESULT GetRequestProperty(
  [in]  const BSTR strPropertyName,
  [in]  LONG       PropertyType,
  [out] VARIANT    *pvarPropertyValue
);

Parámetros

[in] strPropertyName

Especifica el nombre de la propiedad que se va a recuperar. Este parámetro se puede establecer en una propiedad name o en una propiedad de solicitud.

Las propiedades de nombre incluyen un conjunto de propiedades de certificado que siempre son válidas y se pueden recuperar llamando a este método. Para obtener información sobre estas propiedades, vea Propiedades de nombre.

Las propiedades de solicitud son únicas para las solicitudes e incluyen los siguientes valores posibles.

Valor Significado
IdSolicitud
Long con signo
RequestID interno.
RawRequest
Binary
Bytes de solicitud sin formato.
RequestAttributes
String
Cadena de atributo (se puede truncar).
RequestType
Long con signo
Indica la solicitud PKCS #10 o KeyGen. Para obtener más información sobre esta propiedad, vea Comentarios.
SubmittedWhen
Fecha y hora
Cuando llegó.
RequesterName
String
Nombre del solicitante con el formato "DomainName\UserID".
 

NotaGetRequestProperty no puede tener acceso a las propiedades de solicitud adicionales porque no se establecen hasta después de que el módulo de directivas termine de procesar la solicitud. Además, otras propiedades se pueden establecer mediante un tipo de solicitud específico, extensiones de solicitud o atributos con nombre establecidos en el encabezado de una solicitud.

[in] PropertyType

Especifica el tipo de propiedad. El parámetro PropertyType puede ser uno de los siguientes tipos.

Valor Significado
PROPTYPE_LONG
Datos largos firmados.
PROPTYPE_DATE
Fecha y hora.
PROPTYPE_BINARY
Datos binarios.
PROPTYPE_STRING
Datos de cadena Unicode.

[out] pvarPropertyValue

Puntero a variant que contiene el tipo de propiedad de solicitud.

Valor devuelto

C++

Si el método se ejecuta correctamente, el método devuelve S_OK y el parámetro pvarPropertyValue contiene la propiedad request.

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.

VB

El valor devuelto es la propiedad request.

Comentarios

Se debe llamar al método SetContext antes de llamar a este método. La llamada a SetContext especifica qué solicitud se usa como contexto actual.

Las solicitudes contienen todos los estados asociados para la solicitud y el certificado eventual concedido que no forma parte del certificado. Por lo tanto, los datos como los tiempos de revocación y los datos de eliminación se conservan en el objeto de datos de solicitud.

La propiedad RequestType se puede establecer en uno de los valores siguientes.

Valor Significado
CR_IN_PKCS La solicitud es una solicitud de renovación o registro de PKCS #7.
CR_IN-PKCS10 La solicitud es una solicitud PKCS #10.
CR_IN_KEYGEN La solicitud es una solicitud keygen (formato Netscape).
 

Ejemplos

BSTR      bstrPropName = NULL;
VARIANT   varProp;

VariantInit( &varProp );

bstrPropName = SysAllocString(L"RequestID");

// Retrieve the request property.
// pCertServerPolicy has been used to call SetContext previously.
hr = pCertServerPolicy->GetRequestProperty( bstrPropName,
                                          PROPTYPE_LONG,
                                          &varProp );
if (FAILED(hr))
{
    printf("Failed GetRequestProperty [%x]\n", hr);
    goto error;
}
else
{
    // Successfully retrieved property; use varProp as needed.
    // ...
}

// Done processing.
VariantClear( &varProp );
if ( NULL != bstrPropName )
    SysFreeString( bstrPropName );

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 certif.h (incluya Certsrv.h)
Library Certidl.lib
Archivo DLL Certcli.dll

Consulte también

ICertServerPolicy

ICertServerPolicy::SetContext

Propiedades de nombre