Condividi tramite


struttura WINTRUST_DATA (wintrust.h)

[La struttura WINTRUST_DATA è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. Può essere modificato o non disponibile nelle versioni successive.

La struttura WINTRUST_DATA viene usata quando si chiama WinVerifyTrust per passare le informazioni necessarie ai provider di attendibilità.

Sintassi

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;

Members

cbStruct

Dimensione, in byte, della struttura.

pPolicyCallbackData

Puntatore a un buffer di dati usato per passare dati specifici dei criteri a un provider di criteri. Questo membro può essere NULL.

pSIPClientData

Puntatore a un buffer di dati usato per passare i dati specifici dell'interfaccia soggetto a un provider SIP. Questo membro può essere NULL.

dwUIChoice

Specifica il tipo di interfaccia utente da usare. Questo membro deve essere uno dei valori seguenti.

Valore Significato
WTD_UI_ALL
1
Visualizzare tutte le interfacce utente.
WTD_UI_NONE
2
Non visualizzare alcuna interfaccia utente.
WTD_UI_NOBAD
3
Non visualizzare alcuna interfaccia utente negativa.
WTD_UI_NOGOOD
4
Non visualizzare alcuna interfaccia utente positiva.

fdwRevocationChecks

Opzioni di controllo della revoca dei certificati. Questo membro può essere impostato per aggiungere il controllo di revoca a quello eseguito dal provider di criteri selezionato. Questo membro deve essere uno dei valori seguenti.

Valore Significato
WTD_REVOKE_NONE
0
Nessun controllo di revoca aggiuntivo verrà eseguito quando viene usato il flag di WTD_REVOKE_NONE insieme al valore HTTPSPROV_ACTION impostato nel parametro pgActionID della funzione WinVerifyTrust . Per assicurarsi che la funzione WinVerifyTrust non tenti alcun recupero di rete durante la verifica delle firme di codice, WTD_CACHE_ONLY_URL_RETRIEVAL deve essere impostata nel parametro dwProvFlags .
WTD_REVOKE_WHOLECHAIN
1
Il controllo delle revoche verrà eseguito sull'intera catena.

dwUnionChoice

Specifica il membro dell'unione da usare e, di conseguenza, il tipo di oggetto per cui verrà verificato l'attendibilità. Questo membro deve essere uno dei valori seguenti.

Valore Significato
WTD_CHOICE_FILE
1
Usare il file a cui fa riferimento pFile.
WTD_CHOICE_CATALOG
2
Usare il catalogo a cui fa riferimento pCatalog.
WTD_CHOICE_BLOB
3
Usare il BLOB a cui fa riferimento pBlob.
WTD_CHOICE_SIGNER
4
Usare la struttura [WINTRUST_SGNR_INFO](/windows/desktop/api/wintrust/ns-wintrust-wintrust_sgnr_info) a cui punta pSgnr.
WTD_CHOICE_CERT
5
Usare il certificato a cui fa riferimento pCert.

pFile

Puntatore a una struttura di WINTRUST_FILE_INFO .

pCatalog

Puntatore a una struttura WINTRUST_CATALOG_INFO .

pBlob

Puntatore a una struttura WINTRUST_BLOB_INFO .

pSgnr

Puntatore a una struttura WINTRUST_SGNR_INFO .

pCert

Puntatore a una struttura WINTRUST_CERT_INFO .

pDetachedSig

dwStateAction

Specifica l'azione da eseguire. Questo può essere uno dei valori seguenti.

Valore Significato
WTD_STATEACTION_IGNORE
0x00000000
Ignorare il membro hWVTStateData .
WTD_STATEACTION_VERIFY
0x00000001
Verificare l'attendibilità dell'oggetto (in genere un file) specificato dal membro dwUnionChoice . Il membro hWVTStateData riceverà un handle per i dati dello stato. Questo handle deve essere liberato specificando l'azione di WTD_STATEACTION_CLOSE in una chiamata successiva.
WTD_STATEACTION_CLOSE
0x00000002
Liberare il membro hWVTStateData precedentemente allocato con l'azione di WTD_STATEACTION_VERIFY . Questa azione deve essere specificata per ogni uso dell'azione WTD_STATEACTION_VERIFY .
WTD_STATEACTION_AUTO_CACHE
0x00000003
Scrivere i dati del catalogo in una struttura WINTRUST_DATA e quindi memorizzare nella cache tale struttura. Questa azione si applica solo quando il membro dwUnionChoice contiene WTD_CHOICE_CATALOG.
WTD_STATEACTION_AUTO_CACHE_FLUSH
0x00000004
Scarica tutti i dati del catalogo memorizzati nella cache. Questa azione si applica solo quando il membro dwUnionChoice contiene WTD_CHOICE_CATALOG.

hWVTStateData

Handle per i dati sullo stato. Il contenuto di questo membro dipende dal valore del membro dwStateAction .

pwszURLReference

Riservato per utilizzi futuri. Impostare su NULL.

dwProvFlags

Valore DWORD che specifica le impostazioni del provider di attendibilità. Questa può essere una combinazione bit per bit di zero o più dei valori seguenti.

Valore Significato
WTD_USE_IE4_TRUST_FLAG
1 (0x1)
L'attendibilità viene verificata allo stesso modo dell'implementazione di Internet Explorer 4.0.
WTD_NO_IE4_CHAIN_FLAG
2 (0x2)
La funzionalità della catena di Internet Explorer 4.0 non viene usata.
WTD_NO_POLICY_USAGE_FLAG
4 (0x4)
La verifica predefinita del provider di criteri, ad esempio la firma del codice per Authenticode, non viene eseguita e si presuppone che il certificato sia valido per tutti gli utilizzi.
WTD_REVOCATION_CHECK_NONE
16 (0x10)
Il controllo della revoca non viene eseguito.
WTD_REVOCATION_CHECK_END_CERT
32 (0x20)
Il controllo della revoca viene eseguito solo sul certificato finale.
WTD_REVOCATION_CHECK_CHAIN
64 (0x40)
Il controllo della revoca viene eseguito sull'intera catena di certificati.
WTD_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT
128 (0x80)
Il controllo delle revoche viene eseguito sull'intera catena di certificati, escluso il certificato radice.
WTD_SAFER_FLAG
256 (0x100)
Non supportato.
WTD_HASH_ONLY_FLAG
512 (0x200)
Viene verificato solo l'hash.
WTD_USE_DEFAULT_OSVER_CHECK
1024 (0x400)
Viene eseguito il controllo della versione del sistema operativo predefinito. Questo flag viene usato solo per verificare i file con firma del catalogo.
WTD_LIFETIME_SIGNING_FLAG
2048 (0x800)
Se questo flag non è impostato, tutte le firme con timestamp vengono considerate valide per sempre. L'impostazione di questo flag limita la durata valida della firma alla durata del certificato di firma. Ciò consente la scadenza delle firme con timestamp.
WTD_CACHE_ONLY_URL_RETRIEVAL
4096 (0x1000)
Usare solo la cache locale per i controlli di revoca. Impedisce i controlli di revoca in rete.

Windows XP: Questo valore non è supportato.

WTD_DISABLE_MD2_MD4
8192 (0x2000)
Disabilitare l'uso di algoritmi hash MD2 e MD4. Se un file è firmato tramite MD2 o MD4 e se questo flag è impostato, viene restituito un errore NTE_BAD_ALGID.
Nota Questo flag è supportato in Windows 7 con SP1 e sistemi operativi successivi.
 
WTD_MOTW
16384 (0x4000)
Se questo flag viene specificato, si presuppone che il file verificato sia stato scaricato dal Web e abbia il contrassegno dell'attributo Web. Verranno applicati i criteri che devono essere applicati a Contrassegno dei file Web.
Nota Questo flag è supportato nei sistemi operativi Windows 8.1 e versioni successive o nei sistemi che hanno installato KB2862966.
 

dwUIContext

Valore DWORD che specifica il contesto dell'interfaccia utente per la funzione WinVerifyTrust . In questo modo il testo nella finestra di dialogo Authenticode corrisponde all'azione eseguita sul file. Può trattarsi di uno dei valori seguenti.

Valore Significato
WTD_UICONTEXT_EXECUTE
0
Usare quando si chiama WinVerifyTrust per un file che deve essere eseguito. Si tratta del valore predefinito.
WTD_UICONTEXT_INSTALL
1
Usare quando si chiama WinVerifyTrust per un file da installare.

pSignatureSettings

Puntatore a una struttura WINTRUST_SIGNATURE_SETTINGS .

Windows 8 e Windows Server 2012: inizia il supporto per questo membro.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Intestazione wintrust.h