Condividi tramite


struttura WINTRUST_DATA (wintrust.h)

[La struttura WINTRUST_DATA è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. Potrebbe 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;

Membri

cbStruct

Dimensione, in byte, di questa 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 dati specifici di (SIP) 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 tutta l'interfaccia 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 delle revoche a quello eseguito dal provider di criteri selezionato. Questo membro deve essere uno dei valori seguenti.

Valore Significato
WTD_REVOKE_NONE
0
Non verrà eseguito alcun controllo di revoca aggiuntivo 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 unione da utilizzare e, di conseguenza, il tipo di oggetto per il quale verrà verificata l'attendibilità. Questo membro deve essere uno dei valori seguenti.

Valore Significato
WTD_CHOICE_FILE
1
Usare il file a cui punta pFile.
WTD_CHOICE_CATALOG
2
Usare il catalogo a cui punta pCatalog.
WTD_CHOICE_BLOB
3
Usare il BLOB a cui punta 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 punta pCert.

pFile

Puntatore a una struttura 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. Può trattarsi di 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 sullo stato. Questo handle deve essere liberato specificando l'azione 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 utilizzo 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 uso futuro. Impostare su NULL.

dwProvFlags

valore DWORD che specifica le impostazioni del provider di attendibilità. Può trattarsi di una combinazione bit per bit di zero o più dei valori seguenti.

Valore Significato
WTD_USE_IE4_TRUST_FLAG
1 (0x1)
Il trust viene verificato nello 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 delle revoche non viene eseguito.
WTD_REVOCATION_CHECK_END_CERT
32 (0x20)
Il controllo delle revoche viene eseguito solo sul certificato finale.
WTD_REVOCATION_CHECK_CHAIN
64 (0x40)
Il controllo delle revoche 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 firmati dal 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 l'attributo Mark of the Web. Verranno applicati i criteri che devono essere applicati a Mark 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 da eseguire. Questo è il 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 7 con KB3033929, Windows 8 e Windows Server 2012: inizia il supporto per questo membro.

Fabbisogno

Requisito Valore
client minimo supportato Windows XP [solo app desktop]
server minimo supportato Windows Server 2003 [solo app desktop]
intestazione wintrust.h