Método IX509EnrollmentHelper::AddPolicyServer (certenroll.h)

O método AddPolicyServer registra um servidor CEP (política de registro de certificado) e salva as credenciais de acesso do CEP no cache de credenciais. Esse método está habilitado para a Web.

Sintaxe

HRESULT AddPolicyServer(
  [in] BSTR                    strEnrollmentPolicyServerURI,
  [in] BSTR                    strEnrollmentPolicyID,
  [in] PolicyServerUrlFlags    EnrollmentPolicyServerFlags,
  [in] X509EnrollmentAuthFlags authFlags,
  [in] BSTR                    strCredential,
  [in] BSTR                    strPassword
);

Parâmetros

[in] strEnrollmentPolicyServerURI

Um BSTR que contém a URL do servidor de política de registro de certificado.

[in] strEnrollmentPolicyID

Um BSTR que contém a ID do servidor de política de registro de certificado. A ID pode ser qualquer cadeia de caracteres. Ele é definido pelo administrador que instala o servidor CEP.

[in] EnrollmentPolicyServerFlags

Um valor de enumeração PolicyServerUrlFlags . Para a função AddPolicyServer , você pode especificar um OR bit a bit dos valores a seguir.

Valor Significado
PsfAutoEnrollmentEnabled
O registro automático de certificado está habilitado.
PsfAllowUnTrustedCA
Especifica que o certificado da AC emissora não precisa ser confiável pelo cliente para instalar um certificado assinado pela AC.

[in] authFlags

Um valor de enumeração X509EnrollmentAuthFlags que especifica o tipo de autenticação do cliente. Esse pode ser um dos valores a seguir.

Valor Significado
X509AuthAnonymous
Autenticação anônima. Defina os parâmetros strCredential e strPassword comoNULL.
X509AuthKerberos
Autenticação Kerberos. Defina os parâmetros strCredential e strPassword comoNULL.
X509AuthUsername
Limpar o nome de usuário de texto e a autenticação de senha. Defina os parâmetros strCredential e strPassword como o nome de usuário e a senha associada. Essas cadeias de caracteres são criptografadas antes da transmissão e são armazenadas com segurança no cofre de credenciais no servidor CEP.
X509AuthCertificate
Certificado de autenticação do cliente instalado no computador local e usado pelo servidor para verificar a identidade do cliente. Defina o parâmetro strPassword comoNULL e defina a impressão digital do certificado, um hash SHA1 de 20 bytes do certificado, no parâmetro strCredential .

[in] strCredential

Um BSTR que contém a credencial.

[in] strPassword

Um BSTR que contém uma senha de texto clara.

Retornar valor

Se a função for bem-sucedida, a função retornará S_OK.

Se a função falhar, ela retornará um valor HRESULT que indica o erro. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir. Para obter uma lista de códigos de erro comuns, consulte Valores HRESULT comuns.

Código de retorno Descrição
E_INVALIDARG
Os parâmetros strEnrollmentPolicyServerURI, strCredential ou strPassword não podem ser NULL ou vazios.
HRESULT_FROM_WIN32(ERROR_ARITHMETIC_OVERFLOW)
Os parâmetros strPassword, strCredential ou strEnrollmentServerURI excedem 64.000 caracteres ou contêm caracteres nulos inseridos.

Comentários

Os argumentos strCredential e strPassword mudam dependendo do valor especificado no argumento authFlags , conforme mostrado na tabela a seguir.

parâmetro flag Parâmetro strCredential Parâmetro strPassword
X509AuthAnonymous NULL NULL
X509AuthKerberos NULL NULL
X509AuthUsername Limpar o nome de usuário de texto reconhecido pelo servidor CEP. Limpar senha de texto associada ao nome de usuário.
X509AuthCertificate Contém um hash SHA-1 de 20 bytes (impressão digital) do certificado. NULL

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho certenroll.h

Confira também

IX509EnrollmentHelper