Condividi tramite


struttura CRYPT_PROVIDER_DATA (wintrust.h)

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

La struttura CRYPT_PROVIDER_DATA viene usata per passare i dati tra WinVerifyTrust e provider di attendibilità.

Sintassi

typedef struct _CRYPT_PROVIDER_DATA {
  DWORD                               cbStruct;
  WINTRUST_DATA                       *pWintrustData;
  BOOL                                fOpenedFile;
  HWND                                hWndParent;
  GUID                                *pgActionID;
  HCRYPTPROV                          hProv;
  DWORD                               dwError;
  DWORD                               dwRegSecuritySettings;
  DWORD                               dwRegPolicySettings;
  struct _CRYPT_PROVIDER_FUNCTIONS    *psPfns;
  DWORD                               cdwTrustStepErrors;
  DWORD                               *padwTrustStepErrors;
  DWORD                               chStores;
  HCERTSTORE                          *pahStores;
  DWORD                               dwEncoding;
  HCRYPTMSG                           hMsg;
  DWORD                               csSigners;
  struct _CRYPT_PROVIDER_SGNR         *pasSigners;
  DWORD                               csProvPrivData;
  struct _CRYPT_PROVIDER_PRIVDATA     *pasProvPrivData;
  DWORD                               dwSubjectChoice;
  union {
#if ...
    _PROVDATA_SIP        *pPDSip;
#else
    struct _PROVDATA_SIP *pPDSip;
#endif
  };
  char                                *pszUsageOID;
  BOOL                                fRecallWithState;
  FILETIME                            sftSystemTime;
  char                                *pszCTLSignerUsageOID;
  DWORD                               dwProvFlags;
  DWORD                               dwFinalError;
  PCERT_USAGE_MATCH                   pRequestUsage;
  DWORD                               dwTrustPubSettings;
  DWORD                               dwUIStateFlags;
  struct _CRYPT_PROVIDER_SIGSTATE     *pSigState;
  struct WINTRUST_SIGNATURE_SETTINGS_ *pSigSettings;
} CRYPT_PROVIDER_DATA, *PCRYPT_PROVIDER_DATA;

Members

cbStruct

Dimensione, in byte, della struttura.

pWintrustData

Puntatore a una struttura WINTRUST_DATA contenente le informazioni da verificare.

fOpenedFile

Valore booleano che indica se il provider di attendibilità ha aperto l'handle di file, se applicabile.

hWndParent

Handle per la finestra padre. Se non specificato, viene utilizzato un handle per la finestra desktop.

pgActionID

Puntatore a una struttura GUID che identifica un'azione e il provider di attendibilità che supporta tale azione.

hProv

Handle per il provider di servizi di crittografia (CSP). Se questo parametro è NULL, il sistema operativo fornirà un CSP predefinito.

dwError

Livello di errore se si è verificato un errore di sistema di basso livello.

dwRegSecuritySettings

Impostazioni di sicurezza del Registro di sistema.

dwRegPolicySettings

Impostazioni dei criteri del Registro di sistema.

psPfns

Puntatore a una struttura CRYPT_PROVIDER_FUNCTIONS .

cdwTrustStepErrors

Numero di elementi nella matrice padwTrustStepErrors .

padwTrustStepErrors

Matrice di valori DWORD che specificano gli errori dei passaggi di attendibilità.

chStores

Numero di elementi nella matrice pahStores .

pahStores

Matrice di handle dell'archivio certificati.

dwEncoding

Valore che specifica il tipo di codifica.

hMsg

Handle per il messaggio di crittografia.

csSigners

Numero di elementi nella matrice pasSigners .

pasSigners

Puntatore a una matrice di strutture CRYPT_PROVIDER_SGNR .

csProvPrivData

Numero di elementi nella matrice pasProvPrivData .

pasProvPrivData

Puntatore a una matrice di strutture CRYPT_PROVIDER_PRIVDATA .

dwSubjectChoice

Valore che specifica la scelta dell'oggetto.

pPDSip

Puntatore a una struttura _PROVDATA_SIP .

pszUsageOID

Puntatore a una stringa con terminazione Null che contiene l'identificatore dell'oggetto di utilizzo (OID).

fRecallWithState

Valore booleano che indica se lo stato è stato mantenuto per i file di catalogo.

sftSystemTime

Ora di sistema.

pszCTLSignerUsageOID

Puntatore a una stringa con terminazione Null che rappresenta l'OID di utilizzo del firmatario dell'elenco di certificati (CTL).

dwProvFlags

Combinazione bit per bit di uno o più dei flag seguenti.

Valore Significato
CPD_USE_NT5_CHAIN_FLAG
0x80000000
Usa concatenamento di Windows 2000.
CPD_REVOCATION_CHECK_NONE
0x00010000
Non viene eseguito alcun controllo di revoca.
CPD_REVOCATION_CHECK_END_CERT
0x00020000
Viene eseguita la verifica della revoca per il certificato finale.
CPD_REVOCATION_CHECK_CHAIN
0x00040000
Viene eseguita la verifica della revoca per la catena di certificati.
CPD_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT
0x00080000
Viene eseguito il controllo della revoca per la catena di certificati, escluso il certificato radice.

dwFinalError

Valore per l'errore finale.

pRequestUsage

Puntatore a una struttura CERT_USAGE_MATCH .

dwTrustPubSettings

Valore per le impostazioni dell'autore di attendibilità.

dwUIStateFlags

Valore DWORD che specifica i dati sullo stato passati tra un provider di attendibilità e l'interfaccia utente.

Windows XP con SP1 e Windows XP: Questo membro viene ignorato.

pSigState

pSigSettings

Requisiti

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