Compartir a través de


Método ICertGetConfig::GetConfig (certcli.h)

El método GetConfig recupera la cadena de configuración de un servidor de Servicios de certificados.

La cadena de configuración es el nombre del servidor y el nombre de la entidad de certificación (CA) separados por una barra diagonal inversa (\); por ejemplo: ServerName\CAName. Esta cadena de configuración se puede usar para hacer referencia inequívocamente a un servidor de Servicios de certificados específico. Para obtener más información, vea la sección Comentarios.

Sintaxis

HRESULT GetConfig(
  [in]  LONG Flags,
  [out] BSTR *pstrOut
);

Parámetros

[in] Flags

Valor que especifica la entidad de certificación que se va a usar. Este parámetro puede ser uno de los valores siguientes.

Valor Significado
CC_DEFAULTCONFIG
0x00000000
Recupera la ENTIDAD de certificación predeterminada.
CC_FIRSTCONFIG
0x00000002
Devuelve la primera CA.
CC_LOCALACTIVECONFIG
0x00000004
Recupera la entidad de certificación local si se está ejecutando.
CC_LOCALCONFIG
0x00000003
Recupera la entidad de certificación local.
CC_UIPICKCONFIG
0x00000001
Muestra una interfaz de usuario (UI) que permite al usuario seleccionar una CA.
CC_UIPICKCONFIGSKIPLOCALCA
0x00000005
Muestra una interfaz de usuario que permite al usuario seleccionar una ENTIDAD de certificación. La interfaz de usuario excluye cualquier entidad de certificación local. Esta exclusión es útil durante la renovación del certificado de entidad de certificación subordinada cuando la solicitud de certificado de CA subordinada se envía a una ENTIDAD de certificación distinta de la ca actual.

[out] pstrOut

Puntero a un BSTR que contiene la configuración. Cuando haya terminado de usar la configuración, llame a la función SysFreeString para liberar pbstrOut.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto se S_OK.

Si se produce un error en el método, el valor devuelto es un VALOR HRESULT que indica el error. Para obtener una lista de códigos de error comunes, consulte Valores HRESULT comunes.

Comentarios

La parte del nombre de la entidad de certificación (CA) de la cadena de configuración que devuelve esta función es el texto exacto especificado durante el proceso de instalación de Servicios de certificados. Tenga en cuenta que este texto puede ser diferente del formato del nombre de entidad de certificación que se encuentra en los nombres de archivo (por ejemplo, para la lista de revocación de certificados) o en las claves del Registro. Esto se debe a que los nombres de archivo y las claves del Registro usan una versión saneada del nombre de la entidad de certificación.

El proceso de saneamiento del nombre de la entidad de certificación es necesario para quitar caracteres que no son válidos para los nombres de archivo, los nombres de clave del Registro o los valores de nombre distintivos, o no son válidos por motivos específicos de Servicios de certificados. En el proceso de saneamiento, cualquier carácter no válido en el nombre común se convierte en una representación de cinco caracteres en el formato !xxxx, donde el signo de exclamación (!) se usa como carácter de escape y xxxx representa cuatro dígitos hexadecimales que identifican de forma única el carácter que se va a convertir.

Por ejemplo, el signo de número (#) no se permite en nombres distintivos en el servicio de directorio de Active Directory. Si el nombre de ca especificado durante la instalación es #YourName, el nombre de la CA saneada será !0023YourName.

Los caracteres siguientes, si se escriben para el nombre común de la entidad de certificación durante la instalación, se convierten en !formato xxxx durante el proceso de saneamiento. Esta lista está sujeta a cambios.

Carácter Valor en formato !xxxx
< !003c
> !003e
" !0022
/ !002f
\ !005c
: !003a
| !007c
? !003f
* !002a
# !0023
, !002c
+ !002b
; !003b
! !0021
 

Cualquier carácter no imprimido y todos los caracteres Unicode que no sean siete bits también se convierten en !formato xxxx .

Se genera un nombre corto saneado cuando el nombre saneado es demasiado largo para un nombre distintivo relativo (RDN) relativo de servicios de directorio de 64 caracteres. El nombre corto saneado consta del nombre saneado truncado y anexado con un hash del nombre saneado completo. El nombre corto saneado reserva algunos de los 64 caracteres para contener sufijos de lista de revocación de certificados (CRL), como (123).

La parte del nombre de entidad de certificación de la cadena de configuración devuelta por este método es el texto original especificado durante la instalación. Tenga en cuenta que los métodos de Servicios de certificados que requieren un nombre de entidad de certificación como parámetro aceptan el nombre de ca especificado originalmente. Por ejemplo, para el nombre # de la entidad de certificación YourName,
El método ICertView2::OpenConnection acepta #YourName como parte de ca del parámetro.

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

Consulte también

ICertConfig2::GetConfig

ICertGetConfig

ICertView2::OpenConnection