struktur CERT_TRUST_STATUS (wincrypt.h)

Struktur CERT_TRUST_STATUS berisi informasi kepercayaan tentang sertifikat dalam rantai sertifikat, informasi kepercayaan ringkasan tentang rantai sertifikat sederhana, atau informasi ringkasan tentang array rantai sederhana.

Sintaks

typedef struct _CERT_TRUST_STATUS {
  DWORD dwErrorStatus;
  DWORD dwInfoStatus;
} CERT_TRUST_STATUS, *PCERT_TRUST_STATUS;

Anggota

dwErrorStatus

dwErrorStatus adalah bitmask dari kode kesalahan berikut yang ditentukan untuk sertifikat dan rantai.

Nilai Makna
CERT_TRUST_NO_ERROR
0x00000000
Tidak ditemukan kesalahan untuk sertifikat atau rantai ini.
CERT_TRUST_IS_NOT_TIME_VALID
0x00000001
Sertifikat ini atau salah satu sertifikat dalam rantai sertifikat tidak valid waktu.
CERT_TRUST_IS_REVOKED
0x00000004
Kepercayaan untuk sertifikat ini atau salah satu sertifikat dalam rantai sertifikat telah dicabut.
CERT_TRUST_IS_NOT_SIGNATURE_VALID
0x00000008
Sertifikat atau salah satu sertifikat dalam rantai sertifikat tidak memiliki tanda tangan yang valid.
CERT_TRUST_IS_NOT_VALID_FOR_USAGE
0x00000010
Sertifikat atau rantai sertifikat tidak valid untuk penggunaan yang diusulkan.
CERT_TRUST_IS_UNTRUSTED_ROOT
0x00000020
Sertifikat atau rantai sertifikat didasarkan pada akar yang tidak tepercaya.
CERT_TRUST_REVOCATION_STATUS_UNKNOWN
0x00000040
Status pencabutan sertifikat atau salah satu sertifikat dalam rantai sertifikat tidak diketahui.
CERT_TRUST_IS_CYCLIC
0x00000080
Salah satu sertifikat dalam rantai dikeluarkan oleh otoritas sertifikasi yang telah disertifikasi sertifikat asli.
CERT_TRUST_INVALID_EXTENSION
0x00000100
Salah satu sertifikat memiliki ekstensi yang tidak valid.
CERT_TRUST_INVALID_POLICY_CONSTRAINTS
0x00000200
Sertifikat atau salah satu sertifikat dalam rantai sertifikat memiliki ekstensi batasan kebijakan, dan salah satu sertifikat yang diterbitkan memiliki ekstensi pemetaan kebijakan yang tidak diizinkan atau tidak memiliki ekstensi kebijakan penerbitan yang diperlukan.
CERT_TRUST_INVALID_BASIC_CONSTRAINTS
0x00000400
Sertifikat atau salah satu sertifikat dalam rantai sertifikat memiliki ekstensi batasan dasar, dan sertifikat tidak dapat digunakan untuk menerbitkan sertifikat lain, atau panjang jalur rantai telah terlampaui.
CERT_TRUST_INVALID_NAME_CONSTRAINTS
0x00000800
Sertifikat atau salah satu sertifikat dalam rantai sertifikat memiliki ekstensi batasan nama yang tidak valid.
CERT_TRUST_HAS_NOT_SUPPORTED_NAME_CONSTRAINT
0x00001000
Sertifikat atau salah satu sertifikat dalam rantai sertifikat memiliki ekstensi batasan nama yang berisi bidang yang tidak didukung. Bidang minimum dan maksimum tidak didukung. Dengan demikian minimum harus selalu nol dan maksimum harus selalu tidak ada. Hanya UPN yang didukung untuk Nama Lain. Pilihan nama alternatif berikut ini tidak didukung:
  • Alamat X400
  • Nama Pihak EDI
  • Id Terdaftar
CERT_TRUST_HAS_NOT_DEFINED_NAME_CONSTRAINT
0x00002000
Sertifikat atau salah satu sertifikat dalam rantai sertifikat memiliki ekstensi batasan nama dan batasan nama hilang untuk salah satu pilihan nama di sertifikat akhir.
CERT_TRUST_HAS_NOT_PERMITTED_NAME_CONSTRAINT
0x00004000
Sertifikat atau salah satu sertifikat dalam rantai sertifikat memiliki ekstensi batasan nama, dan tidak ada batasan nama yang diizinkan untuk salah satu pilihan nama di sertifikat akhir.
CERT_TRUST_HAS_EXCLUDED_NAME_CONSTRAINT
0x00008000
Sertifikat atau salah satu sertifikat dalam rantai sertifikat memiliki ekstensi batasan nama, dan salah satu pilihan nama dalam sertifikat akhir secara eksplisit dikecualikan.
CERT_TRUST_IS_OFFLINE_REVOCATION
0x01000000
Status pencabutan sertifikat atau salah satu sertifikat dalam rantai sertifikat offline atau kedaluarsa.
CERT_TRUST_NO_ISSUANCE_CHAIN_POLICY
0x02000000
Sertifikat akhir tidak memiliki kebijakan penerbitan yang dihasilkan, dan salah satu sertifikat otoritas sertifikasi penerbit memiliki ekstensi batasan kebijakan yang memerlukannya.
CERT_TRUST_IS_EXPLICIT_DISTRUST
0x04000000
Sertifikat secara eksplisit tidak dipercaya.

Windows Vista dan Windows Server 2008: Dukungan untuk bendera ini dimulai.

CERT_TRUST_HAS_NOT_SUPPORTED_CRITICAL_EXT
0x08000000
Sertifikat tidak mendukung ekstensi penting.

Windows Vista dan Windows Server 2008: Dukungan untuk bendera ini dimulai.

CERT_TRUST_HAS_WEAK_SIGNATURE
0x00100000
Sertifikat belum ditandatangani dengan kuat. Biasanya ini menunjukkan bahwa algoritma hashing MD2 atau MD5 digunakan untuk membuat hash sertifikat.

Windows 8 dan Windows Server 2012: Dukungan untuk bendera ini dimulai.

 

Kode berikut didefinisikan hanya untuk rantai.

Nilai Makna
CERT_TRUST_IS_PARTIAL_CHAIN
0x00010000
Rantai sertifikat tidak lengkap.
CERT_TRUST_CTL_IS_NOT_TIME_VALID
0x00020000
Daftar kepercayaan sertifikat (CTL) yang digunakan untuk membuat rantai ini tidak valid waktu.
CERT_TRUST_CTL_IS_NOT_SIGNATURE_VALID
0x00040000
CTL yang digunakan untuk membuat rantai ini tidak memiliki tanda tangan yang valid.
CERT_TRUST_CTL_IS_NOT_VALID_FOR_USAGE
0x00080000
CTL yang digunakan untuk membuat rantai ini tidak valid untuk penggunaan ini.

dwInfoStatus

Kode status informasi berikut ditentukan.

Nilai Makna
CERT_TRUST_HAS_EXACT_MATCH_ISSUER
0x00000001
Sertifikat penerbit kecocokan yang tepat telah ditemukan untuk sertifikat ini. Kode status ini hanya berlaku untuk sertifikat.
CERT_TRUST_HAS_KEY_MATCH_ISSUER
0x00000002
Sertifikat pengeluar sertifikat kecocokan kunci telah ditemukan untuk sertifikat ini. Kode status ini hanya berlaku untuk sertifikat.
CERT_TRUST_HAS_NAME_MATCH_ISSUER
0x00000004
Sertifikat pengeluar sertifikat kecocokan nama telah ditemukan untuk sertifikat ini. Kode status ini hanya berlaku untuk sertifikat.
CERT_TRUST_IS_SELF_SIGNED
0x00000008
Sertifikat ini ditandatangani sendiri. Kode status ini hanya berlaku untuk sertifikat.
CERT_TRUST_HAS_PREFERRED_ISSUER
0x00000100
Sertifikat atau rantai memiliki penerbit pilihan. Kode status ini berlaku untuk sertifikat dan rantai.
CERT_TRUST_HAS_ISSUANCE_CHAIN_POLICY
0x00000400
Ada kebijakan rantai penerbitan. Kode status ini berlaku untuk sertifikat dan rantai.
CERT_TRUST_HAS_VALID_NAME_CONSTRAINTS
0x00000400
Batasan nama yang valid untuk semua namespace, termasuk UPN. Kode status ini berlaku untuk sertifikat dan rantai.
CERT_TRUST_IS_PEER_TRUSTED
0x00000800
Sertifikat ini tepercaya pada serekan. Kode status ini hanya berlaku untuk sertifikat.

Windows Vista dan Windows Server 2008: Dukungan untuk bendera ini dimulai.

CERT_TRUST_HAS_CRL_VALIDITY_EXTENDED
0x00001000
Validitas daftar pencabutan sertifikat (CRL) sertifikat ini telah diperpanjang. Kode status ini hanya berlaku untuk sertifikat.

Windows Vista dan Windows Server 2008: Dukungan untuk bendera ini dimulai.

CERT_TRUST_IS_FROM_EXCLUSIVE_TRUST_STORE
0x00002000
Sertifikat ditemukan di penyimpanan yang ditunjukkan oleh anggota hExclusiveRoot atau hExclusiveTrustedPeople dari struktur CERT_CHAIN_ENGINE_CONFIG .

Windows 7 dan Windows Server 2008 R2: Dukungan untuk bendera ini dimulai.

CERT_TRUST_IS_COMPLEX_CHAIN
0x00010000
Rantai sertifikat yang dibuat adalah rantai yang kompleks. Kode status ini hanya berlaku untuk rantai.
CERT_TRUST_IS_CA_TRUSTED
0x00004000
Sertifikat OS perantara yang tidak ditandatangani sendiri ditemukan di penyimpanan yang ditunjukkan oleh anggota hExclusiveRoot dari struktur CERT_CHAIN_ENGINE_CONFIG . Sertifikat CA diperlakukan sebagai jangkar kepercayaan untuk rantai sertifikat. Bendera ini hanya akan diatur jika nilai CERT_CHAIN_EXCLUSIVE_ENABLE_CA_FLAG diatur dalam anggota dwExclusiveFlags dari struktur CERT_CHAIN_ENGINE_CONFIG .

Jika bendera ini diatur, bendera CERT_TRUST_IS_SELF_SIGNED dan CERT_TRUST_IS_PARTIAL_CHAINdwErrorStatus tidak akan diatur.

Windows 8 dan Windows Server 2012: Dukungan untuk bendera ini dimulai.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Header wincrypt.h

Lihat juga

CERT_CHAIN_CONTEXT

CERT_CHAIN_ENGINE_CONFIG

CERT_SIMPLE_CHAIN