다음을 통해 공유


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

GetRequestProperty 메서드는 요청에서 특정 속성을 검색합니다.

구문

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

매개 변수

[in] strPropertyName

검색할 속성의 이름을 지정합니다. 이 매개 변수는 이름 속성 또는 요청 속성으로 설정할 수 있습니다.

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

요청 속성은 요청에 고유하며 다음과 같은 가능한 값을 포함합니다.

의미
RequestID
긴 서명됨
내부 requestID.
RawRequest
이진
원시 요청 바이트.
RequestAttributes
문자열
특성 문자열(잘릴 수 있음).
RequestType
긴 서명됨
PKCS #10 또는 KeyGen 요청을 나타냅니다. 이 속성에 대한 자세한 내용은 비고를 참조하세요.
SubmittedWhen
날짜/시간
도착했을 때.
RequesterName
문자열
"DomainName\UserID" 형식의 요청자 이름입니다.
 

참고 정책 모듈이 요청 처리를 완료할 때까지 설정되지 않으므로 GetRequestProperty 에서 액세스할 수 없는 추가 요청 속성이 있습니다. 또한 다른 속성은 특정 요청 유형, 요청 확장명 또는 요청 헤더에 설정된 명명된 특성에 의해 설정될 수 있습니다.

[in] PropertyType

속성 형식을 지정합니다. PropertyType 매개 변수는 다음 형식 중 하나일 수 있습니다.

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

[out] pvarPropertyValue

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

반환 값

C++

메서드가 성공하면 메서드는 S_OK 반환하고 pvarPropertyValue 매개 변수에는 요청 속성이 포함됩니다.

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

VB

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

설명

이 메서드를 호출하기 전에 SetContext 메서드를 호출해야 합니다. SetContext 호출은 현재 컨텍스트로 사용되는 요청을 지정합니다.

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

RequestType 속성은 다음 값 중 하나로 설정할 수 있습니다.

의미
CR_IN_PKCS 요청은 PKCS #7 갱신 또는 등록 요청입니다.
CR_IN-PKCS10 요청은 PKCS #10 요청입니다.
CR_IN_KEYGEN 요청은 Keygen 요청(Netscape 형식)입니다.
 

예제

BSTR      bstrPropName = NULL;
VARIANT   varProp;

VariantInit( &varProp );

bstrPropName = SysAllocString(L"RequestID");

// Retrieve the request property.
// pCertServerPolicy has been used to call SetContext previously.
hr = pCertServerPolicy->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

추가 정보

ICertServerPolicy

ICertServerPolicy::SetContext

이름 속성