Compartir a través de


Personalización de páginas de inscripción web de Servicios de certificados

Servicios de certificados proporciona páginas de inscripción web que se pueden usar para solicitar certificados. Un administrador puede personalizar algunos de los elementos que se pueden ver en las páginas de inscripción web; Sin embargo, debe estar familiarizado con las páginas de inscripción web y el scripting web antes de realizar cambios. Para obtener más información sobre el scripting web, consulte Scripting.

Los valores predeterminados de los campos Nombre distintivo para Organización, Unidad organizativa, Localidad, Estado y País o Región son los valores especificados para la entidad de certificación (CA) cuando se instala Servicios de certificados. Estos valores predeterminados aparecen en las páginas web y el usuario puede cambiarlo durante el proceso de inscripción de certificados. Sin embargo, si desea que aparezcan otros valores predeterminados en las páginas web, puede editar el archivo Certdat.inc (en la ruta de acceso \WindowsDirectory\System32\Certsrv\); en concreto, puede asignar valores personalizados a las siguientes variables proporcionadas para la personalización.

Variable Descripción
sDefaultCompany Empresa predeterminada (aparece en la solicitud de certificado como el campo Organización X.509 ).
sDefaultOrgUnit Departamento predeterminado (aparece en la solicitud de certificado como el campo Unidad organizativa X.509).
sDefaultLocality Ciudad predeterminada (aparece en la solicitud de certificado como el campo Ubicación X.509).
sDefaultState Estado o provincia predeterminado (aparece en la solicitud de certificado como campo Estado X.509).
sDefaultCountry País o región predeterminados (aparece en la solicitud de certificado como campo X.509 País o región).
nPendingTimeoutDays Número de días en los que el usuario puede recuperar un certificado pendiente una vez solicitado.

 

No se debe cambiar ninguna otra variable en el archivo Certdat.inc.

En el ejemplo siguiente se establece la unidad organizativa predeterminada en "Marketing".

sDefaultOrgUnit="Marketing"

Además, puede editar el archivo Certrqtp.inc para agregar, cambiar o quitar plantillas de certificado o tipos disponibles para el usuario. Estas plantillas y tipos, así como la información relacionada, se encuentran en una matriz dimensionada denominada rgAvailReqTypes(m,5).

Esta matriz, como todas las matrices de Visual Basic Scripting Edition, se basa en cero y, como resultado, la primera dimensión de la matriz, m, asigna memoria para elementos m+1. Por lo tanto, si al personalizar las páginas web, debe modificar el número de elementos de la matriz rgAvailReqTypes, establezca la dimensión m en una menor que el número total de elementos que necesita. Por ejemplo, si tendrá siete plantillas de certificado, cambie la declaración de rgAvailReqTypes como se muestra en el ejemplo siguiente.

Dim rgAvailReqTypes(6,5)

La segunda dimensión de la matriz, que siempre tiene el valor cinco, asigna los seis campos que componen cada elemento. Estos seis campos representan la plantilla de certificado o el tipo, el nombre para mostrar asociado a esta plantilla o tipo, y si la plantilla requiere extensiones de correo de Internet seguras o multipropósito (S/MIME).

Para facilitar la comprensión de cuál de estos campos se accede, Certrqtp.inc también proporciona las siguientes constantes que puede usar al establecer valores de campo.

Constante Descripción
FIELD_OID (Se aplica a ca independientes) Índice al primer campo del elemento; representa un identificador de objeto (OID) para un tipo de certificado.
FIELD_TEMPLATE (Se aplica a las CA empresariales) Índice al primer campo del elemento; representa una plantilla de certificado.
FIELD_FRIENDLYNAME Índice al segundo campo del elemento; representa el nombre para mostrar (que el usuario verá al inscribirse) del elemento en el primer campo.
FIELD_CSPLIST Indexe al tercer campo del elemento. Lista de nombres de proveedor de servicios criptográficos permitidos por la plantilla. Cada nombre de la lista está separado por un signo de interrogación (?).
FIELD_CSPLIST2 Indexe al cuarto campo del elemento. Lista secundaria de nombres de proveedor de servicios criptográficos permitidos por la plantilla. Cada nombre de la lista está separado por un signo de interrogación (?). Esta lista proporciona un valor predeterminado diferente.
FIELD_EXPORTABLE Indexe al quinto campo del elemento. Indica si la plantilla especifica que la clave debe exportarse. Si este campo contiene "True", la clave se puede exportar. Si este campo contiene "False", la clave no se puede exportar.
FIELD_NEEDS_SMIME_CAPABILITIES Esta constante no se admite.

 

Por ejemplo, las siguientes expresiones asignan el OID de 1.3.6.1.5.5.7.3.2 al primer campo del primer elemento y asignan "Certificado de explorador web" al segundo campo del primer elemento (el valor de matriz de cero indexa el primer elemento).

rgAvailReqTypes(0, FIELD_OID) = "1.3.6.1.5.5.7.3.2"
rgAvailReqTypes(0, FIELD_FRIENDLYNAME) = "Web Browser Certificate"

El resultado de estas asignaciones es que el usuario verá el texto Certificado de explorador web al inscribirse y, si el usuario selecciona Certificado de explorador web, la solicitud de certificado contendrá el OID 1.3.6.1.5.5.7.3.2.

El archivo Certrqtp.inc también contiene constantes que se usan para los nombres para mostrar de las plantillas o tipos de certificado. En el ejemplo siguiente se muestra el formato .

' Strings for localization.
Const L_WebBrowserCert_Text="Web Browser Certificate"
Const L_EmailProtectionCert_Text="E-Mail Protection Certificate"
Const L_UserTemplateCert_Text="User Certificate"

Estas constantes se definen en un bloque del archivo Certrqtp.inc y esta agrupación facilita la asignación de cada uno de ellos a un valor personalizado. Esto resulta especialmente útil cuando localiza los nombres para mostrar de las versiones internacionales de las páginas web.

Por último, el archivo Certrqtp.inc contiene una variable que representa el número de plantillas de certificado o tipos de la matriz rgAvailReqTypes. A diferencia de la dimensión m de la matriz, establezca el valor de la variable nAvailReqTypes en el número real de plantillas de certificado o tipos que usará la instalación; este valor no debe ser mayor que m+1. Aunque se declara cerca de la parte superior del archivo Certrqtp.inc, a nAvailReqTypes se le asigna un valor después de rellenar la matriz rgAvailReqTypes, lo que facilita la visualización de cuántos elementos se usan realmente en la matriz. El valor nAvailReqTypes se usa en una iteración en otra parte de las páginas de inscripción web, por lo que es importante que esta variable refleje con precisión el número de plantillas o tipos de certificado que desea ver al usuario.

Tenga en cuenta que simplemente agregar plantillas y tipos de certificado al archivo Certrqtp.inc no garantiza que el usuario pueda obtener un certificado con esos rasgos; la entidad de certificación debe estar autorizada para emitir un certificado para la plantilla o el tipo de certificado especificados.

Las instalaciones pueden crear sus propias aplicaciones o páginas web para solicitar y recibir un certificado. Los objetos ICEnroll4 e ICertRequest2 permiten a los programadores o scripters compilar aplicaciones de solicitud de certificado .

Para solicitar que se emita un certificado en una tarjeta inteligente, puede usar el Control de inscripción de tarjetas inteligentes. Para más información y código de ejemplo, consulte ISCrdEnr.