Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La fonction WinVerifyTrust effectue une action de vérification d’approbation sur un objet spécifié. La fonction transmet l’enquête à un fournisseur d’approbation qui prend en charge l’identificateur d’action, le cas échéant.
Pour la vérification des certificats, utilisez les fonctions CertGetCertificateChain et CertVerifyCertificateChainPolicy .
Syntaxe
LONG WinVerifyTrust(
[in] HWND hwnd,
[in] GUID *pgActionID,
[in] LPVOID pWVTData
);
Paramètres
[in] hwnd
Handle facultatif vers une fenêtre d’appelant. Un fournisseur d’approbation peut utiliser cette valeur pour déterminer s’il peut interagir avec l’utilisateur. Toutefois, les fournisseurs d’approbation effectuent généralement des actions de vérification sans entrée de l’utilisateur.
Ce paramètre peut être l’une des valeurs suivantes.
[in] pgActionID
Pointeur vers une structure GUID qui identifie une action et le fournisseur d’approbation qui prend en charge cette action. Cette valeur indique le type d’action de vérification à effectuer sur la structure pointée par pWinTrustData.
Le service WinTrust est conçu pour fonctionner avec des fournisseurs d’approbation implémentés par des tiers. Chaque fournisseur d’approbation fournit son propre ensemble unique d’identificateurs d’action. Pour plus d’informations sur les identificateurs d’action pris en charge par un fournisseur d’approbation, consultez la documentation de ce fournisseur d’approbation.
Par exemple, Microsoft fournit un fournisseur d’approbation d’éditeur de logiciels qui peut établir la fiabilité des logiciels téléchargés à partir d’Internet ou d’un autre réseau public. Le fournisseur d’approbation de l’éditeur de logiciels prend en charge les identificateurs d’action suivants. Ces constantes sont définies dans Softpub.h.
| Valeur | Meaning |
|---|---|
|
Vérifiez l’authenticité d’un pilote signé WHQL (Hardware Quality Labs) Windows. Il s’agit d’un fournisseur de stratégie de module complémentaire Authenticode. |
|
Vérifiez une connexion SSL/TLS établie par WinINet. |
|
Cet ID d’action n’est pas pris en charge. Vérifiez l’authenticité d’un fichier de stockage structuré à l’aide du fournisseur de stratégie de module complémentaire Microsoft Office Authenticode.
Windows Server 2003 et Windows XP : Cet ID d’action est pris en charge. |
|
Vérifiez les chaînes de certificats créées à partir de n’importe quel type d’objet. Un rappel est fourni pour implémenter la stratégie de chaîne finale à l’aide du contexte de chaîne pour chaque signataire et signataire de compteur. |
|
Vérifiez un fichier ou un objet à l’aide du fournisseur de stratégie Authenticode. |
|
Écrivez la structure CRYPT_PROVIDER_DATA dans un fichier après avoir appelé le fournisseur de stratégie Authenticode. |
[in] pWVTData
Pointeur qui, lors d’un cast en tant que structure WINTRUST_DATA , contient des informations que le fournisseur d’approbation doit traiter l’identificateur d’action spécifié. En règle générale, la structure inclut des informations qui identifient l’objet que le fournisseur d’approbation doit évaluer.
Le format de la structure dépend de l’identificateur d’action. Pour plus d’informations sur les données requises pour un identificateur d’action spécifique, consultez la documentation du fournisseur d’approbation qui prend en charge cette action.
Valeur de retour
Si le fournisseur d’approbation vérifie que l’objet est approuvé pour l’action spécifiée, la valeur de retour est égale à zéro. Aucune autre valeur en plus de zéro ne doit être considérée comme un retour réussi.
Si le fournisseur d’approbation ne vérifie pas que l’objet est approuvé pour l’action spécifiée, la fonction retourne un code d’état du fournisseur d’approbation.
Par exemple, un fournisseur d’approbation peut indiquer que le sujet n’est pas approuvé ou est approuvé, mais avec des limitations ou des avertissements. La valeur de retour peut être une valeur spécifique au fournisseur d’approbation décrite dans la documentation d’un fournisseur d’approbation individuel, ou il peut s’agir de l’un des codes d’erreur suivants.
| Retourner le code | Descriptif |
|---|---|
|
L’objet a échoué l’action de vérification spécifiée. La plupart des fournisseurs d’approbation retournent un code d’erreur plus détaillé qui décrit la raison de l’échec.
Note
Le code de retour TRUST_E_SUBJECT_NOT_TRUSTED peut être retourné en fonction de la valeur de la clé de Registre EnableCertPaddingCheck sous HKLM\Software\Microsoft\Cryptography\Wintrust\Config. Si EnableCertPaddingCheck a la valeur « 1 », une vérification supplémentaire est effectuée pour vérifier que la structure WIN_CERTIFICATE ne contient pas d’informations superflues. La vérification vérifie qu’il n’y a pas de données non nulles au-delà de la structure PKCS #7. Pour plus d’informations, reportez-vous à l’avis de sécurité suivant : http://technet.microsoft.com/security/advisory/2915720#section1. |
|
Le fournisseur d’approbation n’est pas reconnu sur ce système. |
|
Le fournisseur d’approbation ne prend pas en charge l’action spécifiée. |
|
Le fournisseur d’approbation ne prend pas en charge le formulaire spécifié pour l’objet. |
Remarques
La fonction WinVerifyTrust permet aux applications d’appeler un fournisseur d’approbation pour vérifier qu’un objet spécifié répond aux critères d’une opération de vérification spécifiée. Le paramètre pgActionID identifie l’opération de vérification, et le paramètre pWinTrustData identifie l’objet dont l’approbation doit être vérifiée. Un fournisseur d’approbation est une DLL inscrite auprès du système d’exploitation. Un appel à WinVerifyTrust transfère cet appel au fournisseur d’approbation inscrit, s’il en existe un, qui prend en charge cet identificateur d’action spécifié.
Par exemple, le fournisseur d’approbation de l’éditeur de logiciels peut vérifier qu’un fichier image exécutable provient d’un éditeur de logiciels approuvé et que le code du fichier n’a pas été modifié depuis sa signature. Dans ce cas, le paramètre pWinTrustData spécifie le nom du fichier et le type de fichier, tel qu’un fichier image Exécutable portable Microsoft.
Chaque fournisseur d’approbation prend en charge un ensemble spécifique d’actions qu’il peut évaluer. Chaque action a un GUID qui l’identifie. Un fournisseur d’approbation peut prendre en charge un nombre quelconque d’identificateurs d’action, mais deux fournisseurs d’approbation ne peuvent pas prendre en charge le même identificateur d’action.
Pour obtenir un exemple montrant comment utiliser cette fonction pour vérifier la signature d’un fichier exécutable portable (PE), consultez l’exemple de programme C : vérification de la signature d’un fichier PE.
Spécifications
| Requirement | Valeur |
|---|---|
| Client minimum requis | Windows XP [applications de bureau uniquement] |
| serveur minimum pris en charge | Windows Server 2003 [applications de bureau uniquement] |
| plateforme cible | Fenêtres |
| Header | wintrust.h (include Softpub.h) |
| Library | Wintrust.lib |
| DLL | Wintrust.dll |