CERT_CHAIN_POLICY_STATUS 구조체(wincrypt.h)
CERT_CHAIN_POLICY_STATUS 구조는 인증서 체인의 유효성을 검사할 때 CertVerifyCertificateChainPolicy 함수에서 반환하는 인증서 체인 상태 정보를 보유합니다.
구문
typedef struct _CERT_CHAIN_POLICY_STATUS {
DWORD cbSize;
DWORD dwError;
LONG lChainIndex;
LONG lElementIndex;
void *pvExtraPolicyStatus;
} CERT_CHAIN_POLICY_STATUS, *PCERT_CHAIN_POLICY_STATUS;
멤버
cbSize
이 구조체의 크기(바이트)입니다.
dwError
유효성 검사 프로세스 중에 오류 또는 잘못된 조건이 발생했음을 나타내는 값입니다. 이 멤버의 값은 CertVerifyCertificateChainPolicy 함수의 pszPolicyOID 매개 변수 값으로 지정된 정책 유형과 관련이 있습니다.
기본 정책 오류(CERT_CHAIN_POLICY_BASE)
값 | 의미 |
---|---|
|
인증서 서명을 확인할 수 없습니다. |
|
인증서 또는 서명이 해지되었습니다. |
|
인증 체인은 올바르게 처리되었지만 트러스트 공급자가 신뢰하지 않는 루트 인증서에서 종료되었습니다. |
|
루트 인증서는 테스트 인증서이며 정책 설정은 테스트 인증서를 허용하지 않습니다. |
|
인증서 체인이 올바르게 만들어지지 않았습니다. |
|
인증서가 요청된 사용에 유효하지 않은 경우 |
|
필수 인증서가 유효 기간 내에 있지 않습니다. |
|
인증서의 이름이 잘못되었습니다. 이름은 허용된 목록에 포함되지 않거나 명시적으로 제외됩니다. |
|
인증서의 정책이 잘못되었습니다. |
|
인증서의 기본 제약 조건이 잘못되었거나 누락되었습니다. |
|
인증서는 CA에서 지정한 목적 이외의 용도로 사용됩니다. |
|
인증 체인의 유효 기간이 올바르게 중첩되지 않습니다. |
|
해지 함수가 인증서에 대한 해지를 검사 수 없습니다. |
|
해지 서버가 오프라인 상태이므로 해지 함수가 해지를 확인할 수 없습니다. |
기본 제약 조건 정책 오류(CERT_CHAIN_POLICY_BASIC_CONSTRAINTS).
값 | 의미 |
---|---|
|
인증서의 기본 제약 조건이 잘못되었거나 누락되었습니다. |
Authenticode 정책 오류(CERT_CHAIN_POLICY_AUTHENTICODE 및 CERT_CHAIN_POLICY_AUTHENTICODE_TS).
이러한 오류는 기본 정책 오류에 추가됩니다.
값 | 의미 |
---|---|
|
인증서는 발급 CA에서 지정한 이외의 용도로 사용되고 있습니다. |
|
인증서가 발급자에서 명시적으로 해지되었습니다. |
|
해지 프로세스를 계속할 수 없으며 인증서를 확인할 수 없습니다. |
SSL 정책 오류(CERT_CHAIN_POLICY_SSL).
이러한 오류는 기본 정책 오류에 추가됩니다.
값 | 의미 |
---|---|
|
인증 체인은 올바르게 처리되었지만 트러스트 공급자가 신뢰하지 않는 루트 인증서에서 종료되었습니다. |
|
인증서의 CN 이름이 전달된 값과 일치하지 않습니다. |
|
인증서는 CA에서 지정한 목적 이외의 용도로 사용됩니다. |
|
최종 엔터티로만 사용할 수 있는 인증서가 CA로 사용되거나 그 반대로 사용됩니다. |
Microsoft 루트 정책 오류(CERT_CHAIN_POLICY_MICROSOFT_ROOT).
값 | 의미 |
---|---|
|
인증 체인은 올바르게 처리되었지만 트러스트 공급자가 신뢰하지 않는 루트 인증서에서 종료되었습니다. |
EV 정책 오류.
값 | 의미 |
---|---|
|
신뢰할 수 있는 루트 기관에 대한 인증서 체인을 빌드할 수 없습니다. |
|
인증서가 요청된 사용에 유효하지 않은 경우 |
lChainIndex
유효하지 않은 오류 또는 조건이 발견된 체인을 나타내는 인덱스입니다. 자세한 내용은 설명 부분을 참조하세요.
lElementIndex
잘못된 오류 또는 조건이 발견된 체인의 요소를 나타내는 인덱스입니다. 자세한 내용은 설명 부분을 참조하세요.
pvExtraPolicyStatus
구조체에 대한 포인터입니다. 구조체 형식은 CertVerifyCertificateChainPolicy 함수의 pszPolicyOID 매개 변수 값에 따라 결정됩니다. dwError 오류 외에도 정책 OID 관련 추가 상태 여기에 반환하여 추가 체인 상태 정보를 제공할 수 있습니다. 이 포인터는 선택적으로 AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS 구조를 가리키도록 설정할 수 있습니다.
설명
lChainIndex와 lElementIndex가 모두 –1로 설정된 경우 유효하지 않은 오류 또는 조건이 전체 체인 컨텍스트에 적용됩니다. lElementIndex만 –1로 설정된 경우 유효하지 않은 오류 또는 조건이 lChainIndex에서 인덱싱된 체인에 적용됩니다. 그렇지 않으면 유효하지 않은 오류 또는 조건이 pChainContext-rgpChain[lChainIndex]->>rgpElement[lElementIndex]의 인증서 요소에 적용됩니다.
요구 사항
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
머리글 | wincrypt.h |