WINTRUST_DATA 構造体 (wintrust.h)

[ WINTRUST_DATA 構造は、[要件] セクションで指定したオペレーティング システムで使用できます。 これは、以降のバージョンで変更または使用できない可能性があります。

WINTRUST_DATA構造体は、WinVerifyTrust を呼び出して必要な情報を信頼プロバイダーに渡すときに使用されます。

構文

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;

メンバー

cbStruct

この構造体のサイズ (バイト単位)。

pPolicyCallbackData

ポリシー固有のデータをポリシー プロバイダーに渡すために使用されるデータ バッファーへのポインター。 このメンバーには NULL を指定できます。

pSIPClientData

サブジェクト インターフェイス パッケージ (SIP) 固有のデータを SIP プロバイダーに渡すために使用されるデータ バッファーへのポインター。 このメンバーには NULL を指定できます。

dwUIChoice

使用するユーザー インターフェイス (UI) の種類を指定します。 このメンバーは、次のいずれかの値である必要があります。

意味
WTD_UI_ALL
1
すべての UI を表示します。
WTD_UI_NONE
2
UI を表示しません。
WTD_UI_NOBAD
3
負の UI は表示しないでください。
WTD_UI_NOGOOD
4
正の UI は表示しないでください。

fdwRevocationChecks

証明書失効チェックオプション。 このメンバーを設定して、選択したポリシー プロバイダーによって行われた失効チェックを追加できます。 このメンバーは、次のいずれかの値である必要があります。

意味
WTD_REVOKE_NONE
0
WTD_REVOKE_NONE フラグがWinVerifyTrust 関数の pgActionID パラメーターに設定されたHTTPSPROV_ACTION値と組み合わせて使用されている場合、追加の失効チェックは行われません。 WinVerifyTrust 関数がコード署名の検証時にネットワーク取得を試みないようにするには、dwProvFlags パラメーターに WTD_CACHE_ONLY_URL_RETRIEVALを設定する必要があります。
WTD_REVOKE_WHOLECHAIN
1
失効チェックはチェーン全体で行われます。

dwUnionChoice

使用する共用体メンバーを指定します。したがって、信頼を検証するオブジェクトの型を指定します。 このメンバーは、次のいずれかの値である必要があります。

意味
WTD_CHOICE_FILE
1
pFile が指すファイルを使用します。
WTD_CHOICE_CATALOG
2
pCatalog が指すカタログを使用します。
WTD_CHOICE_BLOB
3
pBlob が指す BLOB を使用します。
WTD_CHOICE_SIGNER
4
pSgnr が指す [WINTRUST_SGNR_INFO](/windows/desktop/api/wintrust/ns-wintrust-wintrust_sgnr_info) 構造体を使用します。
WTD_CHOICE_CERT
5
pCert が指す証明書を使用します。

pFile

WINTRUST_FILE_INFO構造体へのポインター。

pCatalog

WINTRUST_CATALOG_INFO構造体へのポインター。

pBlob

WINTRUST_BLOB_INFO構造体へのポインター。

pSgnr

WINTRUST_SGNR_INFO構造体へのポインター。

pCert

WINTRUST_CERT_INFO構造体へのポインター。

pDetachedSig

dwStateAction

実行するアクションを指定します。 次のいずれかの値を指定できます。

意味
WTD_STATEACTION_IGNORE
0x00000000
hWVTStateData メンバーを無視します。
WTD_STATEACTION_VERIFY
0x00000001
dwUnionChoice メンバーによって指定されたオブジェクト (通常はファイル) の信頼を確認します。 hWVTStateData メンバーは、状態データへのハンドルを受け取ります。 このハンドルは、後続の呼び出しで WTD_STATEACTION_CLOSE アクションを指定して解放する必要があります。
WTD_STATEACTION_CLOSE
0x00000002
WTD_STATEACTION_VERIFY アクションで以前に割り当てられた hWVTStateData メンバーを解放します。 このアクションは、 WTD_STATEACTION_VERIFY アクションを使用するたびに指定する必要があります。
WTD_STATEACTION_AUTO_CACHE
0x00000003
カタログ データを WINTRUST_DATA 構造体に書き込み、その構造をキャッシュします。 このアクションは、 dwUnionChoice メンバーに WTD_CHOICE_CATALOGが含まれている場合にのみ適用されます。
WTD_STATEACTION_AUTO_CACHE_FLUSH
0x00000004
キャッシュされたカタログ データをフラッシュします。 このアクションは、 dwUnionChoice メンバーに WTD_CHOICE_CATALOGが含まれている場合にのみ適用されます。

hWVTStateData

状態データのハンドル。 このメンバーの内容は、 dwStateAction メンバーの値によって異なります。

pwszURLReference

将来利用するために予約されています。 NULL に設定します。

dwProvFlags

信頼プロバイダーの設定を指定する DWORD 値。 これは、次の値の 0 個以上のビットごとの組み合わせにすることができます。

意味
WTD_USE_IE4_TRUST_FLAG
1 (0x1)
信頼は、インターネット エクスプローラー 4.0 で実装されたのと同じ方法で検証されます。
WTD_NO_IE4_CHAIN_FLAG
2 (0x2)
インターネット エクスプローラー 4.0 チェーン機能は使用されません。
WTD_NO_POLICY_USAGE_FLAG
4 (0x4)
Authenticode のコード署名など、ポリシー プロバイダーの既定の検証は実行されず、証明書はすべての使用に対して有効であると見なされます。
WTD_REVOCATION_CHECK_NONE
16 (0x10)
失効チェックは実行されません。
WTD_REVOCATION_CHECK_END_CERT
32 (0x20)
失効チェックは、終了証明書に対してのみ実行されます。
WTD_REVOCATION_CHECK_CHAIN
64 (0x40)
失効チェックは、証明書チェーン全体で実行されます。
WTD_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT
128 (0x80)
失効チェックは、ルート証明書を除く証明書チェーン全体で実行されます。
WTD_SAFER_FLAG
256 (0x100)
サポートされていません。
WTD_HASH_ONLY_FLAG
512 (0x200)
ハッシュのみが検証されます。
WTD_USE_DEFAULT_OSVER_CHECK
1024 (0x400)
既定のオペレーティング システムのバージョン チェックが実行されます。 このフラグは、カタログ署名付きファイルの検証にのみ使用されます。
WTD_LIFETIME_SIGNING_FLAG
2048 (0x800)
このフラグが設定されていない場合、すべてのタイムスタンプ付き署名は永続的に有効と見なされます。 このフラグを設定すると、署名の有効な有効期間が署名証明書の有効期間に制限されます。 これにより、タイムスタンプ付き署名の有効期限が切れます。
WTD_CACHE_ONLY_URL_RETRIEVAL
4096 (0x1000)
失効チェックにはローカル キャッシュのみを使用します。 ネットワーク経由の失効チェックを防止します。

Windows XP: この値はサポートされていません。

WTD_DISABLE_MD2_MD4
8192 (0x2000)
MD2 および MD4 ハッシュ アルゴリズムの使用を無効にします。 MD2 または MD4 を使用してファイルに署名し、このフラグが設定されている場合は、NTE_BAD_ALGID エラーが返されます。
メモ このフラグは、SP1 以降のオペレーティング システムを使用する Windows 7 でサポートされています。
 
WTD_MOTW
16384 (0x4000)
このフラグを指定すると、検証対象のファイルが Web からダウンロードされ、Web 属性の Mark を持つものと見なされます。 Web ファイルのマークに適用するポリシーが適用されます。
メモこのフラグは、Windows 8.1以降のオペレーティング システム、またはKB2862966がインストールされているシステムでサポートされます。
 

dwUIContext

WinVerifyTrust 関数のユーザー インターフェイス コンテキストを指定する DWORD 値。 これにより、[Authenticode] ダイアログ ボックスのテキストがファイルに対して実行されたアクションと一致します。 次のいずれかの値を指定できます。

意味
WTD_UICONTEXT_EXECUTE
0
実行するファイルに 対して WinVerifyTrust を呼び出すときに使用します。 これが既定値です。
WTD_UICONTEXT_INSTALL
1
インストールするファイルに 対して WinVerifyTrust を呼び出すときに使用します。

pSignatureSettings

WINTRUST_SIGNATURE_SETTINGS構造体へのポインター。

Windows 8とWindows Server 2012: このメンバーのサポートが開始されます。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
Header wintrust.h