Compartilhar via


estrutura WINTRUST_DATA (wintrust.h)

[A estrutura de WINTRUST_DATA está disponível para uso nos sistemas operacionais especificados na seção Requisitos. Ele pode estar alterado ou indisponível em versões subsequentes.]

A estrutura WINTRUST_DATA é usada ao chamar WinVerifyTrust para passar as informações necessárias para os provedores de confiança .

Sintaxe

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;

Membros

cbStruct

O tamanho, em bytes, dessa estrutura.

pPolicyCallbackData

Um ponteiro para um buffer de dados usado para passar dados específicos da política para um provedor de política. Esse membro pode ser NULL.

pSIPClientData

Um ponteiro para um buffer de dados usado para passar dados específicos pacote de interface do assunto (SIP) para um provedor SIP. Esse membro pode ser NULL.

dwUIChoice

Especifica o tipo de interface do usuário a ser usada. Esse membro deve ser um dos seguintes valores.

Valor Significado
WTD_UI_ALL
1
Exibir toda a interface do usuário.
WTD_UI_NONE
2
Não exibir nenhuma interface do usuário.
WTD_UI_NOBAD
3
Não exiba nenhuma interface do usuário negativa.
WTD_UI_NOGOOD
4
Não exiba nenhuma interface do usuário positiva.

fdwRevocationChecks

Opções de verificação de revogação de certificado. Esse membro pode ser definido para adicionar verificação de revogação ao feito pelo provedor de política selecionado. Esse membro deve ser um dos seguintes valores.

Valor Significado
WTD_REVOKE_NONE
0
Nenhuma verificação de revogação adicional será feita quando o sinalizador de WTD_REVOKE_NONE for usado em conjunto com o valor HTTPSPROV_ACTION definido no parâmetro pgActionID da função WinVerifyTrust. Para garantir que a função WinVerifyTrust não tente nenhuma recuperação de rede ao verificar assinaturas de código, WTD_CACHE_ONLY_URL_RETRIEVAL deve ser definida no parâmetro dwProvFlags.
WTD_REVOKE_WHOLECHAIN
1
A verificação de revogação será feita em toda a cadeia.

dwUnionChoice

Especifica o membro do sindicato a ser usado e, portanto, o tipo de objeto para o qual a confiança será verificada. Esse membro deve ser um dos seguintes valores.

Valor Significado
WTD_CHOICE_FILE
1
Use o arquivo apontado por pFile.
WTD_CHOICE_CATALOG
2
Use o catálogo apontado por pCatalog.
WTD_CHOICE_BLOB
3
Use o blob de apontado por pBlob.
WTD_CHOICE_SIGNER
4
Use a estrutura [WINTRUST_SGNR_INFO](/windows/desktop/api/wintrust/ns-wintrust-wintrust_sgnr_info) apontada por pSgnr.
WTD_CHOICE_CERT
5
Use o certificado apontado por pCert.

pFile

Um ponteiro para uma estrutura WINTRUST_FILE_INFO.

pCatalog

Um ponteiro para uma estrutura WINTRUST_CATALOG_INFO.

pBlob

Um ponteiro para uma estrutura WINTRUST_BLOB_INFO.

pSgnr

Um ponteiro para uma estrutura WINTRUST_SGNR_INFO.

pCert

Um ponteiro para uma estrutura WINTRUST_CERT_INFO.

pDetachedSig

dwStateAction

Especifica a ação a ser tomada. Esse pode ser um dos valores a seguir.

Valor Significado
WTD_STATEACTION_IGNORE
0x00000000
Ignore o membro hWVTStateData.
WTD_STATEACTION_VERIFY
0x00000001
Verifique a confiança do objeto (normalmente um arquivo) especificado pelo membro dwUnionChoice. O membro hWVTStateData receberá um identificador para os dados de estado. Esse identificador deve ser liberado especificando a ação WTD_STATEACTION_CLOSE em uma chamada subsequente.
WTD_STATEACTION_CLOSE
0x00000002
Libere o membro hWVTStateData alocado anteriormente com a ação WTD_STATEACTION_VERIFY. Essa ação deve ser especificada para cada uso da ação WTD_STATEACTION_VERIFY.
WTD_STATEACTION_AUTO_CACHE
0x00000003
Escreva os dados do catálogo em uma estrutura de WINTRUST_DATA e, em seguida, armazene essa estrutura em cache. Essa ação só se aplica quando o membro dwUnionChoice contém WTD_CHOICE_CATALOG.
WTD_STATEACTION_AUTO_CACHE_FLUSH
0x00000004
Libere todos os dados do catálogo armazenados em cache. Essa ação só se aplica quando o membro dwUnionChoice contém WTD_CHOICE_CATALOG.

hWVTStateData

Um identificador para os dados de estado. O conteúdo desse membro depende do valor do membro dwStateAction.

pwszURLReference

Reservado para uso futuro. Definir como NULL.

dwProvFlags

valor de DWORD que especifica as configurações do provedor de confiança. Essa pode ser uma combinação bit a bit de zero ou mais dos valores a seguir.

Valor Significado
WTD_USE_IE4_TRUST_FLAG
1 (0x1)
A confiança é verificada da mesma maneira que implementada pelo Internet Explorer 4.0.
WTD_NO_IE4_CHAIN_FLAG
2 (0x2)
A funcionalidade de cadeia do Internet Explorer 4.0 não é usada.
WTD_NO_POLICY_USAGE_FLAG
4 (0x4)
A verificação padrão do provedor de política, como assinatura de código para Authenticode, não é executada e o certificado é considerado válido para todos os usos.
WTD_REVOCATION_CHECK_NONE
16 (0x10)
A verificação de revogação não é executada.
WTD_REVOCATION_CHECK_END_CERT
32 (0x20)
A verificação de revogação é executada somente no certificado final.
WTD_REVOCATION_CHECK_CHAIN
64 (0x40)
A verificação de revogação é executada em toda a cadeia de certificados.
WTD_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT
128 (0x80)
A verificação de revogação é executada em toda a cadeia de certificados, excluindo o certificado raiz.
WTD_SAFER_FLAG
256 (0x100)
Não há suporte.
WTD_HASH_ONLY_FLAG
512 (0x200)
Somente o hash é verificado.
WTD_USE_DEFAULT_OSVER_CHECK
1024 (0x400)
A verificação de versão do sistema operacional padrão é executada. Esse sinalizador é usado apenas para verificar arquivos assinados pelo catálogo.
WTD_LIFETIME_SIGNING_FLAG
2048 (0x800)
Se esse sinalizador não estiver definido, todas as assinaturas com carimbo de data/hora serão consideradas válidas para sempre. Definir esse sinalizador limita o tempo de vida válido da assinatura ao tempo de vida do certificado de assinatura. Isso permite que as assinaturas carimbadas expirem.
WTD_CACHE_ONLY_URL_RETRIEVAL
4096 (0x1000)
Use apenas o cache local para verificações de revogação. Impede verificações de revogação pela rede.

Windows XP: Não há suporte para esse valor.

WTD_DISABLE_MD2_MD4
8192 (0x2000)
Desabilite o uso de algoritmos de hash MD2 e MD4. Se um arquivo for assinado usando MD2 ou MD4 e se esse sinalizador estiver definido, um erro NTE_BAD_ALGID será retornado.
Observação Esse sinalizador tem suporte no Windows 7 com sistemas operacionais SP1 e posteriores.
 
WTD_MOTW
16384 (0x4000)
Se esse sinalizador for especificado, supõe-se que o arquivo que está sendo verificado tenha sido baixado da Web e tenha a Marca do atributo Web. As políticas destinadas a se aplicar à Marca dos arquivos da Web serão impostas.
Observação Esse sinalizador tem suporte no Windows 8.1 e em sistemas operacionais posteriores ou em sistemas que instalaram KB2862966.
 

dwUIContext

Um valor DWORD que especifica o contexto da interface do usuário para a função WinVerifyTrust. Isso faz com que o texto na caixa de diálogo Authenticode corresponda à ação executada no arquivo. Esse pode ser um dos valores a seguir.

Valor Significado
WTD_UICONTEXT_EXECUTE
0
Use ao chamar WinVerifyTrust para um arquivo que deve ser executado. Esse é o valor padrão.
WTD_UICONTEXT_INSTALL
1
Use ao chamar WinVerifyTrust para um arquivo que deve ser instalado.

pSignatureSettings

Ponteiro para uma estrutura de WINTRUST_SIGNATURE_SETTINGS.

Windows 7 com KB3033929, Windows 8 e Windows Server 2012: começa o suporte para esse membro.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows XP [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows Server 2003 [somente aplicativos da área de trabalho]
cabeçalho wintrust.h