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.
[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 |