Compartir a través de


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

El método AddPolicyServer registra un servidor de directiva de inscripción de certificados (CEP) y guarda las credenciales de acceso de CEP en la memoria caché de credenciales. Este método está habilitado para web.

Sintaxis

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

Parámetros

[in] strEnrollmentPolicyServerURI

BSTR que contiene la dirección URL del servidor de directivas de inscripción de certificados.

[in] strEnrollmentPolicyID

BSTR que contiene el identificador del servidor de directivas de inscripción de certificados. El identificador puede ser cualquier cadena. Lo establece el administrador que instala el servidor CEP.

[in] EnrollmentPolicyServerFlags

Valor de enumeración PolicyServerUrlFlags . Para la función AddPolicyServer , puede especificar un OR bit a bit de los valores siguientes.

Valor Significado
PsfAutoEnrollmentEnabled
La inscripción automática de certificados está habilitada.
PsfAllowUnTrustedCA
Especifica que el cliente no debe confiar en el certificado de la ENTIDAD de certificación emisora para instalar un certificado firmado por la ENTIDAD de certificación.

[in] authFlags

Valor de enumeración X509EnrollmentAuthFlags que especifica el tipo de autenticación de cliente. Puede ser uno de los siguientes valores.

Valor Significado
X509AuthAnonymous
Autenticación anónima. Establezca los parámetros strCredential y strPassword en NULL.
X509AuthKerberos
Autenticación Kerberos. Establezca los parámetros strCredential y strPassword en NULL.
X509AuthUsername
Borrar el nombre de usuario y la autenticación de contraseñas de texto. Establezca los parámetros strCredential y strPassword en el nombre de usuario y la contraseña asociada. Estas cadenas se cifran antes de la transmisión y se almacenan de forma segura en el almacén de credenciales en el servidor CEP.
X509AuthCertificate
Certificado de autenticación de cliente instalado en el equipo local y usado por el servidor para comprobar la identidad del cliente. Establezca el parámetro strPassword en NULL y establezca la huella digital del certificado, un hash SHA1 de 20 bytes del certificado, en el parámetro strCredential .

[in] strCredential

Un BSTR que contiene la credencial.

[in] strPassword

BSTR que contiene una contraseña de texto no cifrado.

Valor devuelto

Si la función se realiza correctamente, la función devuelve S_OK.

Si se produce un error en la función, devuelve un valor HRESULT que indica el error. Entre los valores posibles se incluyen los que se indican en la tabla siguiente, entre otros. Para obtener una lista de códigos de error comunes, consulte Valores HRESULT comunes.

Código devuelto Descripción
E_INVALIDARG
Los parámetros strEnrollmentPolicyServerURI, strCredential o strPassword no pueden ser NULL ni estar vacíos.
HRESULT_FROM_WIN32(ERROR_ARITHMETIC_OVERFLOW)
Los parámetros strPassword, strCredential o strEnrollmentServerURI superan los 64 000 caracteres o contienen caracteres NULL incrustados.

Comentarios

Los argumentos strCredential y strPassword cambian según el valor especificado en el argumento authFlags , como se muestra en la tabla siguiente.

parámetro flag Parámetro strCredential Parámetro strPassword
X509AuthAnonymous NULL NULL
X509AuthKerberos NULL NULL
X509AuthUsername Borrar el nombre de usuario reconocido por el servidor CEP. Borre la contraseña de texto asociada al nombre de usuario.
X509AuthCertificate Contiene un hash SHA-1 de 20 bytes (huella digital) del certificado. NULL

Requisitos

Requisito Value
Cliente mínimo compatible Windows 7 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 R2 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado certenroll.h

Consulte también

IX509EnrollmentHelper