structure SAFER_CODE_PROPERTIES_V2 (winsafer.h)
La structure SAFER_CODE_PROPERTIES contient des informations et des critères d’image de code à vérifier sur l’image de code. Un tableau de structures SAFER_CODE_PROPERTIES est passé à la fonction SaferIdentifyLevel .
SAFER_CODE_PROPERTIES_V2 est une redéfinition de SAFER_CODE_PROPERTIES et est une version étendue de SAFER_CODE_PROPERTIES_V1 , car elle inclut de nouveaux membres pour les packages d’applications du Windows Store. Les appelants binaires existants peuvent distinguer quelle version en vérifiant le membre cbSize .
Syntaxe
typedef struct _SAFER_CODE_PROPERTIES_V2 {
DWORD cbSize;
DWORD dwCheckFlags;
LPCWSTR ImagePath;
HANDLE hImageFileHandle;
DWORD UrlZoneId;
BYTE ImageHash[SAFER_MAX_HASH_SIZE];
DWORD dwImageHashSize;
LARGE_INTEGER ImageSize;
ALG_ID HashAlgorithm;
LPBYTE pByteBlock;
HWND hWndParent;
DWORD dwWVTUIChoice;
LPCWSTR PackageMoniker;
LPCWSTR PackagePublisher;
LPCWSTR PackageName;
ULONG64 PackageVersion;
BOOL PackageIsFramework;
} SAFER_CODE_PROPERTIES_V2, *PSAFER_CODE_PROPERTIES_V2;
Membres
cbSize
Taille de cette structure en octets. Il est utilisé pour la compatibilité future et descendante.
dwCheckFlags
Types de critères pris en compte lors de l’évaluation de cette structure. Certains indicateurs peuvent être ignorés en mode silencieux si tout ou partie de leurs éléments de structure associés ne sont pas fournis. Si vous spécifiez zéro pour ce paramètre, le contenu de la structure entière est ignoré.
Le tableau suivant répertorie les valeurs possibles. Ces valeurs peuvent être combinées à l’aide d’une opération OR au niveau du bit.
ImagePath
Chaîne spécifiant le chemin complet et le nom de fichier à utiliser pour les vérifications de discrimination en fonction du chemin. Le chemin d’accès à l’image est également utilisé pour ouvrir et lire le fichier afin d’identifier tous les autres critères de discrimination non fournis dans cette structure. Ce membre peut avoir la valeur NULL ; toutefois, si le membre dwCheckFlags inclut SAFER_CRITERIA_AUTHENTICODE, ce membre ou le membre hImageFileHandle doit être défini.
hImageFileHandle
Handle de fichier à une image de code avec au moins GENERIC_READ accès. Le handle est utilisé au lieu de rouvrir explicitement le fichier pour calculer les critères de discrimination non fournis dans cette structure. Ce membre peut avoir la valeur NULL ; toutefois, si dwCheckFlags inclut SAFER_CRITERIA_AUTHENTICODE, ce membre ou le membre ImagePath doivent être définis.
UrlZoneId
Zones de sécurité prédéterminées d’Internet Explorer. Les zones suivantes sont définies :
- URLZONE_LOCAL_MACHINE
- URLZONE_INTRANET
- URLZONE_TRUSTED
- URLZONE_INTERNET
- URLZONE_UNTRUSTED
ImageHash[SAFER_MAX_HASH_SIZE]
Hachage pré-calculé de l’image. Le hachage fourni est interprété comme valide si le membre ImageSize et le membre dwImageHashSize ne sont pas nuls et si le membre HashAlgorithm contient un algorithme de hachage valide de Wincrypt.h.
Si le hachage fourni ne répond pas à ces conditions, le hachage est automatiquement recalculé par :
- Utilisation du membre ImageSize et du membre pByteBlock si les deux ne sont pas nulles.
- Utilisation du membre hImageFileHandle s’il n’est pas NULL.
- Ouverture et utilisation du membre ImagePath s’il n’est pas NULL.
dwImageHashSize
Taille en octets du membre ImageHash .
ImageSize
Taille en octets du membre pByteBlock . Ce membre n’est pas utilisé si le membre pByteBlock a la valeur NULL.
HashAlgorithm
Algorithme de hachage utilisé pour créer le membre ImageHash .
pByteBlock
Bloc de mémoire contenant l’image du code en cours de vérification. Ce membre est facultatif. Si ce membre est spécifié, le membre ImageSize doit également être fourni.
hWndParent
Arguments utilisés pour la vérification du certificat du signataire Authenticode. Ces arguments sont passés à la fonction WinVerifyTrust et contrôlent l’interface utilisateur qui invite l’utilisateur à accepter ou à rejeter les certificats approuvés.
dwWVTUIChoice
Indique le type d’interface utilisateur utilisé. Le tableau suivant répertorie les valeurs possibles.
Value | Signification |
---|---|
|
Affichez toute l’interface utilisateur. |
|
N’affiche aucune interface utilisateur. |
|
Affichez l’interface utilisateur uniquement s’il n’y a pas eu d’erreurs. |
|
Affichez l’interface utilisateur uniquement si une erreur se produit. |
PackageMoniker
Propriété moniker de package. À utiliser par les applications du Windows Store.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Ce membre n’est pas disponible.
PackagePublisher
Propriété d’éditeur de package. À utiliser par les applications du Windows Store.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Ce membre n’est pas disponible.
PackageName
Propriété du nom du package. À utiliser par les applications du Windows Store.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Ce membre n’est pas disponible.
PackageVersion
Propriété de version du package. À utiliser par les applications du Windows Store.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Ce membre n’est pas disponible.
PackageIsFramework
Le package est un package d’infrastructure. À utiliser par les applications du Windows Store.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Ce membre n’est pas disponible.
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 | winsafer.h |