Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La función WinVerifyTrustEx realiza una acción de comprobación de confianza en un objeto especificado y toma un puntero a una estructura WINTRUST_DATA . La función pasa la consulta a un proveedor de confianza, si existe, que admite el identificador de acción.
Para la comprobación de certificados, use las funciones CertGetCertificateChain y CertVerifyCertificateChainPolicy .
Syntax
long WinVerifyTrustEx(
[in] HWND hwnd,
[in] GUID *pgActionID,
[in] WINTRUST_DATA *pWinTrustData
);
Parámetros
[in] hwnd
Identificador opcional para una ventana del autor de la llamada. Un proveedor de confianza puede usar este valor para determinar si puede interactuar con el usuario. Sin embargo, los proveedores de confianza suelen realizar acciones de verificación sin entrada del usuario.
Este parámetro puede ser uno de los siguientes valores.
[in] pgActionID
Puntero a una estructura GUID que identifica una acción y el proveedor de confianza que admite esa acción. Este valor indica el tipo de acción de verificación que se va a realizar en la estructura a la que apunta pWinTrustData.
El servicio WinTrust está diseñado para trabajar con proveedores de confianza implementados por terceros. Cada proveedor de confianza proporciona su propio conjunto único de identificadores de acción. Para obtener información sobre los identificadores de acción admitidos por un proveedor de confianza, consulte la documentación de ese proveedor de confianza.
Por ejemplo, Microsoft proporciona un proveedor de confianza para editores de software que puede establecer la confiabilidad del software que se descarga de Internet o de alguna otra red pública. El proveedor de confianza del publicador de software admite los siguientes identificadores de acción. Estas constantes se definen en Softpub.h.
| Importancia | Meaning |
|---|---|
|
Compruebe la autenticidad de un controlador firmado de Windows Hardware Quality Labs (WHQL). Se trata de un proveedor de directivas de complemento Authenticode. |
|
Compruebe una conexión SSL/TLS establecida por WinINet. |
|
No se admite este identificador de acción. Compruebe la autenticidad de un archivo de almacenamiento estructurado mediante el proveedor de directivas de complemento Microsoft Office Authenticode.
Windows Server 2003 y Windows XP: Este identificador de acción es compatible. |
|
Compruebe solo una cadena de certificados. Esto solo es válido al pasar un contexto de certificado en las estructuras de entrada winVerifyTrust .
Nota No se recomienda usar esta función para realizar la comprobación del certificado. Para realizar la comprobación de certificados, use las funciones CertGetCertificateChain y CertVerifyCertificateChainPolicy .
|
|
Compruebe las cadenas de certificados creadas a partir de cualquier tipo de objeto. Se proporciona una devolución de llamada para implementar la directiva de cadena final mediante el contexto de cadena para cada firmante y firmante de contador. |
|
Compruebe un archivo o objeto mediante el proveedor de directivas Authenticode. |
|
Escriba la estructura CRYPT_PROVIDER_DATA en un archivo después de llamar al proveedor de directivas Authenticode. |
[in] pWinTrustData
Puntero a una estructura de WINTRUST_DATA que contiene información que el proveedor de confianza necesita para procesar el identificador de acción especificado. Normalmente, la estructura incluye información que identifica el objeto que el proveedor de confianza debe evaluar.
El formato de la estructura depende del identificador de acción. Para obtener información sobre los datos necesarios para un identificador de acción específico, consulte la documentación del proveedor de confianza que admite esa acción.
Valor devuelto
Tenga en cuenta que, aunque el tipo de valor devuelto se declara como HRESULT, esta API devuelve códigos de error win32, no use SUCCEEDED() o FAILED() para probar el resultado.
Si el proveedor de confianza comprueba que el sujeto es de confianza para la acción especificada, el valor devuelto es ERROR_SUCCESS. De lo contrario, la función devuelve un código de estado del proveedor de confianza.
Por ejemplo, un proveedor de confianza podría indicar que el asunto no es de confianza o es de confianza, pero con limitaciones o advertencias. El valor devuelto puede ser un valor específico del proveedor de confianza descrito en la documentación de un proveedor de confianza individual o puede ser uno de los siguientes códigos de error.
| Código devuelto | Description |
|---|---|
|
El asunto produjo un error en la acción de comprobación especificada. La mayoría de los proveedores de confianza devuelven un código de error más detallado que describe el motivo del error.
Nota
El código de retorno TRUST_E_SUBJECT_NOT_TRUSTED se puede devolver en función del valor de la clave del Registro EnableCertPaddingCheck en HKLM\Software\Microsoft\Cryptography\Wintrust\Config. Si EnableCertPaddingCheck está establecido en "1", se realiza una comprobación adicional para comprobar que la estructura de WIN_CERTIFICATE no contiene información extraña. La comprobación valida que no hay ningún dato distinto de cero más allá de la estructura PKCS #7. Para obtener más información, consulte el siguiente aviso de seguridad: http://technet.microsoft.com/security/advisory/2915720#section1. |
|
El proveedor de confianza no se reconoce en este sistema. |
|
El proveedor de confianza no admite la acción especificada. |
|
El proveedor de confianza no admite el formulario especificado para el asunto. |
Requisitos
| Requirement | Importancia |
|---|---|
| Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
| servidor mínimo admitido | Windows Server 2003 [solo aplicaciones de escritorio] |
| de la plataforma de destino de | Windows |
| Header | wintrust.h |
| Library | Wintrust.lib |
| DLL | Wintrust.dll |