Partilhar via


Personalizando páginas de registro na Web dos Serviços de Certificados

Serviços de Certificados fornece páginas de registo na web que podem ser usadas para solicitar certificados. Um administrador pode personalizar alguns dos itens que podem ser visualizados nas páginas de inscrição na Web; no entanto, você deve estar familiarizado com as páginas de inscrição na Web e scripts da Web antes de fazer quaisquer alterações. Para obter mais informações sobre scripts da Web, consulte Scripting.

Os valores padrão para os campos Nome Distinto para Organização, Unidade Organizacional, Localidade, Estado e País/Região são os valores especificados para a autoridade de certificação (CA) quando os Serviços de Certificados são instalados. Esses valores padrão aparecem nas páginas da Web e podem ser alterados pelo usuário durante o processo de registro do certificado. No entanto, se desejar que outros valores padrão apareçam nas páginas da Web, você pode editar o arquivo Certdat.inc (no caminho \WindowsDirectory\System32\Certsrv\); Especificamente, você pode atribuir valores personalizados às seguintes variáveis fornecidas para personalização.

Variável Descrição
sDefaultCompany Empresa padrão (aparece na solicitação de certificado como o campo de Organização X.509 ).
sUnidadeOrgPadrão Departamento padrão (aparece na solicitação de certificado como o campo Unidade Organizacional X.509).
sDefaultLocality Cidade padrão (aparece na solicitação de certificado como o campo Localização X.509).
sDefaultState Estado/província padrão (aparece na solicitação de certificado como o campo Estado X.509).
sDefaultCountry País/região padrão (aparece na solicitação de certificado como o campo País/Região X.509).
nPendingTimeoutDays Número de dias em que o usuário pode recuperar um certificado pendente depois que ele foi solicitado.

 

Nenhuma outra variável deve ser alterada no arquivo Certdat.inc.

O exemplo a seguir define a Unidade Organizacional padrão como "Marketing".

sDefaultOrgUnit="Marketing"

Além disso, você pode editar o arquivo Certrqtp.inc para adicionar, alterar ou remover modelos de certificado ou tipos disponíveis para o usuário. Esses modelos e tipos, bem como informações relacionadas, estão contidos em uma matriz dimensionada chamada rgAvailReqTypes(m,5).

Essa matriz, como todas as matrizes do Visual Basic Scripting Edition, é baseada em zero e, como resultado, a primeira dimensão da matriz, m, aloca memória para m+1 itens. Portanto, se ao personalizar páginas da Web precisar modificar o número de itens na matriz rgAvailReqTypes, defina a dimensão m para um a menos do que o número total de itens necessários. Por exemplo, se você tiver sete modelos de certificado, altere a declaração de rgAvailReqTypes conforme mostrado no exemplo a seguir.

Dim rgAvailReqTypes(6,5)

A segunda dimensão da matriz, que sempre tem o valor cinco, aloca os seis campos que compõem cada item. Esses seis campos representam o modelo ou tipo de certificado, o nome para exibição associado a esse modelo ou tipo e se o modelo requer Secure/Multipurpose Internet Mail Extensions (S/MIME).

Para facilitar a compreensão de qual desses campos está sendo acessado, Certrqtp.inc também fornece as constantes a seguir que você pode usar ao definir valores de campo.

Constante Descrição
FIELD_OID (Aplica-se a autoridades de certificação autônomas) Índice para o primeiro campo do item; representa umde identificador de objeto(OID) para um tipo de certificado.
FIELD_TEMPLATE (Aplica-se a autoridades de certificação empresariais) Índice para o primeiro campo do item; representa um modelo de certificado.
FIELD_FRIENDLYNAME Índice do segundo campo do item; representa o nome exibido (que o utilizador verá ao inscrever-se) do item no primeiro campo.
FIELD_CSPLIST Índice para o terceiro campo do item. Uma lista de nomes de Provedores de Serviços de Criptografia permitidos pelo modelo. Cada nome na lista é separado por um ponto de interrogação (?).
FIELD_CSPLIST2 Índice para o quarto campo do item. Uma lista secundária de Provedor de Serviços de Criptografia nomes permitidos pelo modelo. Cada nome na lista é separado por um ponto de interrogação (?). Esta lista fornece um padrão diferente.
FIELD_EXPORTABLE Índice para o quinto campo do item. Indica se o modelo especifica que a chave deve ser exportável. Se este campo contiver "True", a chave é exportável. Se este campo contiver "False", a chave não é exportável.
FIELD_NEEDS_SMIME_CAPABILITIES Esta constante não é suportada.

 

Por exemplo, as expressões a seguir atribuem o OID de 1.3.6.1.5.5.7.3.2 ao primeiro campo do primeiro item e atribuem "Certificado do navegador da Web" ao segundo campo do primeiro item (o valor da matriz de zero indexa o primeiro item).

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

O resultado dessas atribuições é que o usuário verá o texto de Certificado do Navegador da Web ao se inscrever e, se o usuário selecionar de Certificado do Navegador da Web, ade solicitação de certificadoconterá o OID 1.3.6.1.5.5.7.3.2.

O arquivo Certrqtp.inc também contém constantes que são usadas para os nomes de exibição dos modelos ou tipos de certificado. O exemplo a seguir mostra o 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"

Essas constantes são definidas em um bloco no arquivo Certrqtp.inc, e esse agrupamento facilita a atribuição de um valor personalizado a cada uma delas. Isso é particularmente útil quando você localiza os nomes de exibição para versões internacionais das páginas da Web.

Finalmente, o arquivo Certrqtp.inc contém uma variável que representa o número de modelos ou tipos de certificado na matriz rgAvailReqTypes. Em contraste com a dimensão de de m da matriz, defina o valor da variável nAvailReqTypes para o número real de modelos de certificado ou tipos que a sua instalação usará; este valor não deve ser maior do que m+1. Embora declarado perto da parte superior do arquivo Certrqtp.inc, nAvailReqTypes recebe um valor depois que a matriz rgAvailReqTypes é preenchida, tornando mais fácil ver quantos elementos são realmente usados pela matriz. O valor nAvailReqTypes é usado em uma iteração em outro lugar nas páginas de registro na Web, por isso é importante que essa variável reflita com precisão o número de modelos ou tipos de certificado que você deseja que sejam visíveis para o usuário.

Observe que a simples adição de modelos de certificado e tipos ao arquivo Certrqtp.inc não garante que o usuário será capaz de obter um certificado com essas características; a autoridade de certificação deve estar autorizada a emitir um certificado para o modelo ou tipo de certificado especificado.

As instalações podem criar seus próprios aplicativos ou páginas da Web para solicitar e receber um certificado. O ICEnroll4 e ICertRequest2 objetos permitem que programadores ou scripters criem solicitação de certificado aplicativos.

Para solicitar a emissão de um certificado em um cartão inteligente , pode usar o Controlo de Inscrição de Cartões Inteligentes. Para obter detalhes e código de exemplo, consulte ISCrdEnr.