다음을 통해 공유


ICertServerExit::GetRequestProperty 메서드(certif.h)

GetRequestProperty 메서드는 요청에서 명명된 속성을 반환합니다.

요청은 요청에 대한 모든 연결된 상태와 인증서의 일부가 아닌 최종적으로 부여된 인증서를 보유하는 데 사용됩니다. 따라서 해지 시간 및 처리 데이터와 같은 데이터는 요청 데이터 개체에 유지됩니다.

구문

HRESULT GetRequestProperty(
  [in]  const BSTR strPropertyName,
  [in]  LONG       PropertyType,
  [out] VARIANT    *pvarPropertyValue
);

매개 변수

[in] strPropertyName

검색할 속성을 지정합니다. 항상 유효하고 이 메서드를 호출하여 검색할 수 있는 이름 속성이라고 하는 인증서 속성의 주식 집합이 있습니다. 이러한 속성에 대한 자세한 내용은 이름 속성을 참조하세요.

인증서 요청에 유효한 다른 속성에는 요청 속성이 포함됩니다.

참고 요청의 DistinguishedNameRawName 속성은 인증서가 PKCS #10 인증서 요청 또는 인코딩된 주체 이름 정보를 포함하는 지원되는 다른 요청 형식을 사용하여 요청된 경우에만 GetRequestProperty 에서 액세스할 수 있습니다. KeyGen 요청에는 인코딩된 주체 이름 정보가 포함되어 있지 않습니다.
 

다음 속성은 요청에 고유하며 GetRequestProperty 메서드를 사용하여 액세스할 수 있습니다.

요청 속성 의미
Disposition
긴 서명됨
현재 요청 처리
DispositionMessage
문자열
정보 처리 메시지
RawCACertificate
이진
발급 인증 기관에 대한 인증서
RawRequest
이진
원시 요청 바이트
RequestAttributes
문자열
특성 문자열(잘릴 수 있습니다).
RequesterName
문자열
"DomainName\UserID" 형식의 요청자 이름입니다.
RequestID
긴 서명됨
내부 requestID
RequestType
긴 서명됨
PKCS #10 또는 KeyGen 요청을 나타냅니다.
ResolvedWhen
날짜/시간
해결된 경우
StatusCode
긴 서명됨
마지막 작업에 대한 Windows 오류
SubmittedWhen
날짜/시간
도착했을 때
 

RequestType 속성은 다음 값 중 하나가 됩니다.

의미
CR_IN_PKCS7
PKCS #7 갱신 또는 등록 요청
CR_IN_PKCS10
PKCS #10 요청
CR_IN_KEYGEN
Keygen 요청(Netscape 형식)
 

또한 다른 속성은 특정 요청 유형, 요청 확장명 또는 요청 헤더에 설정된 명명된 특성에 의해 설정될 수 있습니다.

[in] PropertyType

속성 형식을 지정합니다. 형식은 다음 형식 중 하나일 수 있습니다.

의미
PROPTYPE_LONG
서명된 긴 데이터
PROPTYPE_DATE
날짜/시간
PROPTYPE_BINARY
이진 데이터
PROPTYPE_STRING
유니코드 문자열 데이터

[out] pvarPropertyValue

요청 속성 형식을 포함할 VARIANT 에 대한 포인터입니다.

반환 값

C++

메서드가 성공하면 메서드는 S_OK 반환하고 *pvarPropertyValue 는 요청 속성 값이 포함된 VARIANT 로 설정됩니다.

메서드가 실패하면 오류를 나타내는 HRESULT 값을 반환합니다. 일반적인 오류 코드 목록은 일반 HRESULT 값을 참조하세요.

VB

반환 값은 요청 속성 값입니다.

설명

이 메서드를 사용하기 전에 ICertServerExit::SetContext 를 호출해야 합니다.

예제

BSTR      bstrPropName = NULL;
VARIANT   varProp;

VariantInit( &varProp );

bstrPropName = SysAllocString(L"RequestID");

// Retrieve the request property.
// pCertServerExit has been used to call SetContext previously.
hr = pCertServerExit->GetRequestProperty( bstrPropName,
                                          PROPTYPE_LONG,
                                          &varProp );
if (FAILED(hr))
{
    printf("Failed GetRequestProperty [%x]\n", hr);
    goto error;
}
else
{
    // Successfully retrieved property; use varProp as needed.
    // ...
}

// Done processing.
VariantClear( &varProp );
if ( NULL != bstrPropName )
    SysFreeString( bstrPropName );

요구 사항

요구 사항
지원되는 최소 클라이언트 지원되는 버전 없음
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 certif.h(Certsrv.h 포함)
라이브러리 Certidl.lib
DLL Certcli.dll

추가 정보

ICertServerExit

ICertServerExit::SetContext

이름 속성