Fungsi WinVerifyTrustEx (wintrust.h)
Fungsi WinVerifyTrustEx melakukan tindakan verifikasi kepercayaan pada objek tertentu dan membawa pointer ke struktur WINTRUST_DATA . Fungsi meneruskan pertanyaan ke penyedia kepercayaan, jika ada, yang mendukung pengidentifikasi tindakan.
Untuk verifikasi sertifikat, gunakan fungsi CertGetCertificateChain dan CertVerifyCertificateChainPolicy .
Sintaks
long WinVerifyTrustEx(
[in] HWND hwnd,
[in] GUID *pgActionID,
[in] WINTRUST_DATA *pWinTrustData
);
Parameter
[in] hwnd
Handel opsional ke jendela penelepon. Penyedia kepercayaan dapat menggunakan nilai ini untuk menentukan apakah ia dapat berinteraksi dengan pengguna. Namun, penyedia kepercayaan biasanya melakukan tindakan verifikasi tanpa input dari pengguna.
Parameter ini bisa menjadi salah satu nilai berikut.
[in] pgActionID
Penunjuk ke struktur GUID yang mengidentifikasi tindakan dan penyedia kepercayaan yang mendukung tindakan tersebut. Nilai ini menunjukkan jenis tindakan verifikasi yang akan dilakukan pada struktur yang ditunjukkan oleh pWinTrustData.
Layanan WinTrust dirancang untuk bekerja dengan penyedia kepercayaan yang diterapkan oleh pihak ketiga. Setiap penyedia kepercayaan menyediakan serangkaian pengidentifikasi tindakan uniknya sendiri. Untuk informasi tentang pengidentifikasi tindakan yang didukung oleh penyedia kepercayaan, lihat dokumentasi untuk penyedia kepercayaan tersebut.
Misalnya, Microsoft menyediakan Penyedia Kepercayaan Penerbit Perangkat Lunak yang dapat membangun kepercayaan perangkat lunak yang diunduh dari Internet atau beberapa jaringan publik lainnya. Penyedia Kepercayaan Penerbit Perangkat Lunak mendukung pengidentifikasi tindakan berikut. Konstanta ini didefinisikan dalam Softpub.h.
Nilai | Makna |
---|---|
|
Verifikasi keaslian driver bertanda tangan Windows Hardware Quality Labs (WHQL). Ini adalah penyedia kebijakan add-on Authenticode. |
|
Verifikasi koneksi SSL/TLS melalui Internet Explorer. |
|
ID Tindakan ini tidak didukung. Verifikasi keaslian file penyimpanan terstruktur dengan menggunakan penyedia kebijakan add-on Microsoft Office Authenticode.
Windows Server 2003 dan Windows XP: ID Tindakan ini didukung. |
|
Verifikasi rantai sertifikat saja. Ini hanya berlaku saat meneruskan dalam konteks sertifikat dalam struktur input WinVerifyTrust .
Catatan Kami tidak menyarankan penggunaan fungsi ini untuk melakukan verifikasi sertifikat. Untuk melakukan verifikasi sertifikat, gunakan fungsi CertGetCertificateChain dan CertVerifyCertificateChainPolicy .
|
|
Verifikasi rantai sertifikat yang dibuat dari jenis objek apa pun. Panggilan balik disediakan untuk menerapkan kebijakan rantai akhir dengan menggunakan konteks rantai untuk setiap penanda tangan dan penanda tangan penghitung. |
|
Verifikasi file atau objek menggunakan penyedia kebijakan Authenticode. |
|
Tulis struktur CRYPT_PROVIDER_DATA ke file setelah memanggil penyedia kebijakan Authenticode. |
[in] pWinTrustData
Penunjuk ke struktur WINTRUST_DATA yang berisi informasi yang diperlukan penyedia kepercayaan untuk memproses pengidentifikasi tindakan yang ditentukan. Biasanya, struktur mencakup informasi yang mengidentifikasi objek yang harus dievaluasi oleh penyedia kepercayaan.
Format struktur tergantung pada pengidentifikasi tindakan. Untuk informasi tentang data yang diperlukan untuk pengidentifikasi tindakan tertentu, lihat dokumentasi untuk penyedia kepercayaan yang mendukung tindakan tersebut.
Nilai kembali
Catatan, sementara jenis pengembalian dinyatakan sebagai HRESULT API ini mengembalikan kode kesalahan Win32, jangan gunakan SUCCEEDED() atau FAILED() untuk menguji hasilnya.
Jika penyedia kepercayaan memverifikasi bahwa subjek dipercaya untuk tindakan yang ditentukan, nilai yang dikembalikan ERROR_SUCCESS. Jika tidak, fungsi mengembalikan kode status dari penyedia kepercayaan.
Misalnya, penyedia kepercayaan mungkin menunjukkan bahwa subjek tidak tepercaya, atau dipercaya tetapi dengan batasan atau peringatan. Nilai yang dikembalikan dapat berupa nilai khusus penyedia kepercayaan yang dijelaskan dalam dokumentasi untuk penyedia kepercayaan individual, atau bisa menjadi salah satu kode kesalahan berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Subjek gagal dalam tindakan verifikasi yang ditentukan. Sebagian besar penyedia kepercayaan mengembalikan kode kesalahan yang lebih rinci yang menjelaskan alasan kegagalan tersebut.
Catatan
Kode pengembalian TRUST_E_SUBJECT_NOT_TRUSTED dapat dikembalikan tergantung pada nilai kunci registri EnableCertPaddingCheck di bawah HKLM\Software\Microsoft\Cryptography\Wintrust\Config. Jika EnableCertPaddingCheck diatur ke "1", maka pemeriksaan tambahan dilakukan untuk memverifikasi bahwa struktur WIN_CERTIFICATE tidak berisi informasi asing. Pemeriksaan memvalidasi bahwa tidak ada data non-nol di luar struktur PKCS #7. Kunci EnableCertPaddingCheck akan diatur ke "1" secara default pada 10 Juni 2014. Untuk informasi selengkapnya, silakan merujuk ke saran keamanan berikut: http://technet.microsoft.com/security/advisory/2915720#section1. |
|
Penyedia kepercayaan tidak dikenali pada sistem ini. |
|
Penyedia kepercayaan tidak mendukung tindakan yang ditentukan. |
|
Penyedia kepercayaan tidak mendukung formulir yang ditentukan untuk subjek. |
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | wintrust.h |
Pustaka | Wintrust.lib |
DLL | Wintrust.dll |