structure WINTRUST_DATA (wintrust.h)

[La structure WINTRUST_DATA peut être utilisée dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Il peut être modifié ou indisponible dans les versions suivantes.]

La structure WINTRUST_DATA est utilisée lors de l’appel de WinVerifyTrust pour transmettre les informations nécessaires aux fournisseurs d’approbation.

Syntaxe

typedef struct _WINTRUST_DATA {
  DWORD                               cbStruct;
  LPVOID                              pPolicyCallbackData;
  LPVOID                              pSIPClientData;
  DWORD                               dwUIChoice;
  DWORD                               fdwRevocationChecks;
  DWORD                               dwUnionChoice;
  union {
#if ...
    WINTRUST_FILE_INFO_                *pFile;
#else
    struct WINTRUST_FILE_INFO_         *pFile;
#endif
#if ...
    WINTRUST_CATALOG_INFO_             *pCatalog;
#else
    struct WINTRUST_CATALOG_INFO_      *pCatalog;
#endif
#if ...
    WINTRUST_BLOB_INFO_                *pBlob;
#else
    struct WINTRUST_BLOB_INFO_         *pBlob;
#endif
#if ...
    WINTRUST_SGNR_INFO_                *pSgnr;
#else
    struct WINTRUST_SGNR_INFO_         *pSgnr;
#endif
#if ...
    WINTRUST_CERT_INFO_                *pCert;
#else
    struct WINTRUST_CERT_INFO_         *pCert;
#endif
#if ...
    WINTRUST_DETACHED_SIG_INFO_        *pDetachedSig;
#else
    struct WINTRUST_DETACHED_SIG_INFO_ *pDetachedSig;
#endif
  };
  DWORD                               dwStateAction;
  HANDLE                              hWVTStateData;
  WCHAR                               *pwszURLReference;
  DWORD                               dwProvFlags;
  DWORD                               dwUIContext;
  struct WINTRUST_SIGNATURE_SETTINGS_ *pSignatureSettings;
} WINTRUST_DATA, *PWINTRUST_DATA;

Membres

cbStruct

Taille, en octets, de cette structure.

pPolicyCallbackData

Pointeur vers une mémoire tampon de données utilisée pour passer des données spécifiques à une stratégie à un fournisseur de stratégie. Ce membre peut avoir la valeur NULL.

pSIPClientData

Pointeur vers une mémoire tampon de données utilisée pour transmettre des données spécifiques au package d’interface d’objet (SIP) à un fournisseur SIP. Ce membre peut avoir la valeur NULL.

dwUIChoice

Spécifie le type d’interface utilisateur à utiliser. Ce membre doit être l’une des valeurs suivantes.

Valeur Signification
WTD_UI_ALL
1
Affichez toute l’interface utilisateur.
WTD_UI_NONE
2
N’affiche aucune interface utilisateur.
WTD_UI_NOBAD
3
N’affichez aucune interface utilisateur négative.
WTD_UI_NOGOOD
4
N’affichez aucune interface utilisateur positive.

fdwRevocationChecks

Options de case activée de révocation de certificat. Ce membre peut être défini pour ajouter la vérification de révocation à celle effectuée par le fournisseur de stratégie sélectionné. Ce membre doit être l’une des valeurs suivantes.

Valeur Signification
WTD_REVOKE_NONE
0
Aucune vérification de révocation supplémentaire n’est effectuée lorsque l’indicateur WTD_REVOKE_NONE est utilisé conjointement avec la valeur HTTPSPROV_ACTION définie dans le paramètre pgActionID de la fonction WinVerifyTrust . Pour vous assurer que la fonction WinVerifyTrust ne tente aucune récupération réseau lors de la vérification des signatures de code, WTD_CACHE_ONLY_URL_RETRIEVAL doit être défini dans le paramètre dwProvFlags .
WTD_REVOKE_WHOLECHAIN
1
La vérification de la révocation sera effectuée sur l’ensemble de la chaîne.

dwUnionChoice

Spécifie le membre d’union à utiliser et, par conséquent, le type d’objet pour lequel l’approbation sera vérifiée. Ce membre doit être l’une des valeurs suivantes.

Valeur Signification
WTD_CHOICE_FILE
1
Utilisez le fichier pointé vers pFile.
WTD_CHOICE_CATALOG
2
Utilisez le catalogue pointé vers pCatalog.
WTD_CHOICE_BLOB
3
Utilisez l’objet BLOB pointé par pBlob.
WTD_CHOICE_SIGNER
4
Utilisez la structure [WINTRUST_SGNR_INFO](/windows/desktop/api/wintrust/ns-wintrust-wintrust_sgnr_info) pointée par pSgnr.
WTD_CHOICE_CERT
5
Utilisez le certificat pointé vers pCert.

pFile

Pointeur vers une structure WINTRUST_FILE_INFO .

pCatalog

Pointeur vers une structure WINTRUST_CATALOG_INFO .

pBlob

Pointeur vers une structure WINTRUST_BLOB_INFO .

pSgnr

Pointeur vers une structure WINTRUST_SGNR_INFO .

pCert

Pointeur vers une structure WINTRUST_CERT_INFO .

pDetachedSig

dwStateAction

Spécifie l’action à entreprendre. Il peut s’agir de l’une des valeurs suivantes.

Valeur Signification
WTD_STATEACTION_IGNORE
0x00000000
Ignorez le membre hWVTStateData .
WTD_STATEACTION_VERIFY
0x00000001
Vérifiez l’approbation de l’objet (généralement un fichier) spécifiée par le membre dwUnionChoice . Le membre hWVTStateData reçoit un handle pour les données d’état. Ce handle doit être libéré en spécifiant l’action WTD_STATEACTION_CLOSE dans un appel suivant.
WTD_STATEACTION_CLOSE
0x00000002
Libérez le membre hWVTStateData précédemment alloué avec l’action WTD_STATEACTION_VERIFY . Cette action doit être spécifiée pour chaque utilisation de l’action WTD_STATEACTION_VERIFY .
WTD_STATEACTION_AUTO_CACHE
0x00000003
Écrivez les données du catalogue dans une structure WINTRUST_DATA , puis mettez cette structure en cache. Cette action s’applique uniquement lorsque le membre dwUnionChoice contient WTD_CHOICE_CATALOG.
WTD_STATEACTION_AUTO_CACHE_FLUSH
0x00000004
Videz toutes les données de catalogue mises en cache. Cette action s’applique uniquement lorsque le membre dwUnionChoice contient WTD_CHOICE_CATALOG.

hWVTStateData

Handle pour les données d’état. Le contenu de ce membre dépend de la valeur du membre dwStateAction .

pwszURLReference

Réservé pour un usage futur. Défini sur NULL.

dwProvFlags

Valeur DWORD qui spécifie les paramètres du fournisseur d’approbation. Il peut s’agir d’une combinaison au niveau du bit de zéro ou plus des valeurs suivantes.

Valeur Signification
WTD_USE_IE4_TRUST_FLAG
1 (0x1)
L’approbation est vérifiée de la même manière que celle implémentée par Internet Explorer 4.0.
WTD_NO_IE4_CHAIN_FLAG
2 (0x2)
La fonctionnalité de chaîne Internet Explorer 4.0 n’est pas utilisée.
WTD_NO_POLICY_USAGE_FLAG
4 (0x4)
La vérification par défaut du fournisseur de stratégie, telle que la signature de code pour Authenticode, n’est pas effectuée et le certificat est supposé valide pour toutes les utilisations.
WTD_REVOCATION_CHECK_NONE
16 (0x10)
La vérification de révocation n’est pas effectuée.
WTD_REVOCATION_CHECK_END_CERT
32 (0x20)
La vérification de révocation est effectuée uniquement sur le certificat de fin.
WTD_REVOCATION_CHECK_CHAIN
64 (0x40)
La vérification de révocation est effectuée sur l’ensemble de la chaîne de certificats.
WTD_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT
128 (0x80)
La vérification de révocation est effectuée sur l’ensemble de la chaîne de certificats, à l’exception du certificat racine.
WTD_SAFER_FLAG
256 (0x100)
Non pris en charge.
WTD_HASH_ONLY_FLAG
512 (0x200)
Seul le hachage est vérifié.
WTD_USE_DEFAULT_OSVER_CHECK
1024 (0x400)
La vérification de version du système d’exploitation par défaut est effectuée. Cet indicateur est utilisé uniquement pour vérifier les fichiers signés par catalogue.
WTD_LIFETIME_SIGNING_FLAG
2048 (0x800)
Si cet indicateur n’est pas défini, toutes les signatures horodatées sont considérées comme valides pour toujours. La définition de cet indicateur limite la durée de vie valide de la signature à la durée de vie du certificat de signature. Cela permet aux signatures horodatées d’expirer.
WTD_CACHE_ONLY_URL_RETRIEVAL
4096 (0x1000)
Utilisez uniquement le cache local pour les vérifications de révocation. Empêche les vérifications de révocation sur le réseau.

Windows XP : Cette valeur n’est pas prise en charge.

WTD_DISABLE_MD2_MD4
8192 (0x2000)
Désactivez l’utilisation d’algorithmes de hachage MD2 et MD4. Si un fichier est signé à l’aide de MD2 ou MD4 et si cet indicateur est défini, une erreur de NTE_BAD_ALGID est retournée.
Note Cet indicateur est pris en charge sur Windows 7 avec les systèmes d’exploitation SP1 et ultérieurs.
 
WTD_MOTW
16384 (0x4000)
Si cet indicateur est spécifié, il est supposé que le fichier en cours de vérification a été téléchargé à partir du web et possède l’attribut Mark of the Web. Les stratégies destinées à s’appliquer aux fichiers Marque des fichiers web seront appliquées.
Note Cet indicateur est pris en charge sur les systèmes d’exploitation Windows 8.1 et ultérieurs ou sur les systèmes qui ont installé KB2862966.
 

dwUIContext

Valeur DWORD qui spécifie le contexte d’interface utilisateur pour la fonction WinVerifyTrust . Ainsi, le texte de la boîte de dialogue Authenticode correspond à l’action effectuée sur le fichier. Il peut s’agir de l’une des valeurs suivantes.

Valeur Signification
WTD_UICONTEXT_EXECUTE
0
Utilisez lors de l’appel de WinVerifyTrust pour un fichier à exécuter. Il s’agit de la valeur par défaut.
WTD_UICONTEXT_INSTALL
1
Utilisez lors de l’appel de WinVerifyTrust pour un fichier qui doit être installé.

pSignatureSettings

Pointeur vers une structure WINTRUST_SIGNATURE_SETTINGS .

Windows 8 et Windows Server 2012 : la prise en charge de ce membre commence.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
En-tête wintrust.h