Freigeben über


SAFER_CODE_PROPERTIES_V1-Struktur (winsafer.h)

Die SAFER_CODE_PROPERTIES_V1-Struktur enthält Codebildinformationen und Kriterien, die im Codebild überprüft werden sollen. Ein Array von SAFER_CODE_PROPERTIES_V1 Strukturen wird an die SaferIdentifyLevel-Funktion übergeben.

SAFER_CODE_PROPERTIES_V1 enthält keine neuen Mitglieder für Windows Store-App-Pakete. Vorhandene binäre Aufrufer können unterscheiden, welche Version sie durch Überprüfen des cbSize-Elements .

Syntax

typedef struct _SAFER_CODE_PROPERTIES_V1 {
  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;
} SAFER_CODE_PROPERTIES_V1, *PSAFER_CODE_PROPERTIES_V1;

Member

cbSize

Die Größe (in Bytes) dieser Struktur. Dies wird für zukünftige und Abwärtskompatibilität verwendet.

dwCheckFlags

Die Typen von Kriterien, die bei der Auswertung dieser Struktur berücksichtigt werden. Einige Flags werden möglicherweise im Hintergrund ignoriert, wenn einige oder alle ihrer zugeordneten Strukturelemente nicht bereitgestellt werden. Wenn Sie null für diesen Parameter angeben, wird der Inhalt der gesamten Struktur ignoriert.

In der folgenden Tabelle sind die möglichen Werte aufgeführt. Diese Werte können mithilfe einer bitweisen OR-Operation kombiniert werden.

Wert Bedeutung
SAFER_CRITERIA_IMAGEPATH
0x00001
Überprüfen Sie den Codebildpfad.
SAFER_CRITERIA_IMAGEHASH
0x00004
Überprüfen Sie den Codehash.
SAFER_CRITERIA_AUTHENTICODE
0x00008
Überprüfen Sie die Authenticode-Signatur. Wenn dieser Wert verwendet wird, muss entweder das Element hImageFileHandle oder das ImagePath-Element festgelegt werden.
SAFER_CRITERIA_URLZONE
0x00010
Überprüfen Sie die URSPRUNGS-URL.
SAFER_CRITERIA_IMAGEPATH_NT
0x01000
Überprüfen Sie den Windows NT-Imagepfad.

ImagePath

Eine Zeichenfolge, die den vollqualifizierten Pfad und Dateinamen angibt, die basierend auf dem Pfad für Diskriminierungsprüfungen verwendet werden sollen. Der Bildpfad wird auch verwendet, um die Datei zu öffnen und zu lesen, um andere Diskriminierungskriterien zu identifizieren, die in dieser Struktur nicht angegeben sind. Dieser Member kann NULL sein; Wenn das dwCheckFlags-Element jedoch SAFER_CRITERIA_AUTHENTICODE enthält, muss entweder dieses Element oder das hImageFileHandle-Element festgelegt werden.

hImageFileHandle

Ein Dateihandle für ein Codeimage mit mindestens GENERIC_READ Zugriff. Das Handle wird verwendet, anstatt die Datei explizit erneut zu öffnen, um Diskriminierungskriterien zu berechnen, die in dieser Struktur nicht angegeben sind. Dieser Member kann NULL sein; Wenn dwCheckFlags jedoch SAFER_CRITERIA_AUTHENTICODE enthält, muss entweder dieser Member oder das ImagePath-Element festgelegt werden.

UrlZoneId

Das vordefinierte Internet Explorer Sicherheitszonen. Die folgenden Zonen werden definiert:

  • URLZONE_LOCAL_MACHINE
  • URLZONE_INTRANET
  • URLZONE_TRUSTED
  • URLZONE_INTERNET
  • URLZONE_UNTRUSTED
Dieser Member kann auf 0 festgelegt werden.

ImageHash[SAFER_MAX_HASH_SIZE]

Der vorberechnete Hash des Images. Der angegebene Hash wird als gültig interpretiert, wenn sowohl das ImageSize-Member als auch das dwImageHashSize-Element ungleich null sind und das HashAlgorithm-Element einen gültigen Hashingalgorithmus von Wincrypt.h enthält.

Wenn der angegebene Hash diese Bedingungen nicht erfüllt, wird der Hash automatisch neu berechnet:

  • Verwenden sie das ImageSize-Element und das pByteBlock-Element , wenn beide ungleich 0o sind.
  • Verwenden des hImageFileHandle-Elements , wenn es nicht NULL ist.
  • Öffnen und Verwenden des ImagePath-Elements , wenn es nicht NULL ist.

dwImageHashSize

Die Größe des ImageHash-Elements in Bytes.

ImageSize

Die Größe des pByteBlock-Elements in Bytes. Dieser Member wird nicht verwendet, wenn der pByteBlock-MemberNULL ist.

HashAlgorithm

Der Hashalgorithmus, der zum Erstellen des ImageHash-Elements verwendet wird.

pByteBlock

Der Speicherblock, der das Bild des zu überprüfenden Codes enthält. Dieses Member ist optional. Wenn dieser Member angegeben ist, muss auch der ImageSize-Member angegeben werden.

hWndParent

Die Argumente, die für die Überprüfung des Authenticode-Signierers verwendet werden. Diese Argumente werden an die WinVerifyTrust-Funktion übergeben und steuern die Benutzeroberfläche, die den Benutzer auffordert, anvertraute Zertifikate zu akzeptieren oder abzulehnen.

dwWVTUIChoice

Gibt den Typ der verwendeten Benutzeroberfläche an. In der folgenden Tabelle sind die möglichen Werte aufgeführt.

Wert Bedeutung
WTD_UI_ALL
Alle Benutzeroberfläche anzeigen.
WTD_UI_NONE
Keine Benutzeroberfläche anzeigen.
WTD_UI_NOBAD
Zeigt die Benutzeroberfläche nur an, wenn keine Fehler aufgetreten sind.
WTD_UI_NOGOOD
Die Benutzeroberfläche wird nur angezeigt, wenn ein Fehler auftritt.

Hinweise

SAFER_CODE_PROPERTIES wurde so neu definiert, dass zusätzliche Member eingeschlossen werden, die es der Windows Store-App ermöglichen, die -Struktur zu verwenden. Überprüfen Sie den cbSize-Member auf die geeignete Größe der Struktur und darauf, ob Sie die SAFER_CODE_PROPERTIES-Struktur oder die SAFER_CODE_PROPERTIES_V1-Struktur verwenden sollten.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Kopfzeile winsafer.h