다음을 통해 공유


IX509CertificateRequestCmc2::InitializeFromInnerRequestTemplate 메서드(certenroll.h)

InitializeFromInnerRequestTemplate 메서드는 내부 요청 개체 및 템플릿의 인증서 요청을 초기화합니다.

구문

HRESULT InitializeFromInnerRequestTemplate(
  [in] IX509CertificateRequest     *pInnerRequest,
  [in] IX509EnrollmentPolicyServer *pPolicyServer,
  [in] IX509CertificateTemplate    *pTemplate
);

매개 변수

[in] pInnerRequest

내부 요청 개체를 나타내는 IX509CertificateRequest 인터페이스에 대한 포인터입니다. PKCS #10 또는 CMC 요청일 수 있습니다.

[in] pPolicyServer

pTemplate 매개 변수로 지정된 템플릿을 포함하는 CEP(인증서 등록 정책) 서버를 나타내는 IX509EnrollmentPolicyServer 개체에 대한 포인터입니다.

[in] pTemplate

초기화 중에 사용할 템플릿을 나타내는 IX509CertificateTemplate 개체에 대한 포인터입니다.

반환 값

함수가 성공하면 함수는 S_OK 반환합니다.

함수가 실패하면 오류를 나타내는 HRESULT 값을 반환합니다. 가능한 값에는 다음 표에 있는 값이 포함되지만, 이에 국한되는 것은 아닙니다. 일반적인 오류 코드 목록은 일반적인 HRESULT 값을 참조하세요.

반환 코드/값 설명
CRYPT_E_INVALID_MSG_TYPE
pInnerRequest 매개 변수에 전달된 요청 개체는 PKCS #10 또는 CMC 요청이어야 합니다.
E_POINTER
pInnerRequest, pPolicyServerpTemplate 매개 변수는 NULL일 수 없습니다.
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
요청 개체가 이미 초기화되었습니다.

설명

템플릿을 지정하면 내부 요청에 포함되지 않을 수 있는 외부 요청 개체에 정보를 추가할 수 있습니다. 예를 들어 내부 요청에 필요한 확장이 포함되어 있지 않으면 템플릿을 제공할 수 있습니다.

InitializeFromInnerRequestTemplate 메서드:

  • ICryptAttributes 컬렉션을 만듭니다.
  • IX509NameValuePairs 컬렉션을 만듭니다.
  • IX509Extensions 컬렉션을 만듭니다.
  • 중요한 확장에 대한 IObjectIds 컬렉션을 만들고 XCN_OID_KEY_USAGE 및 XCN_OID_BASIC_CONSTRAINTS2 개체 식별자(ID)를 추가합니다.
  • 요청 개체에서 표시하지 않을 빈 IObjectIds OID 컬렉션을 만듭니다.
  • ISignerCertificates 컬렉션을 만듭니다.
  • 템플릿에서 프라이빗 키 플래그를 검색합니다.
  • 템플릿 플래그 또는 설정에 필요한 경우 ArchivePrivateKey 속성을 설정합니다.
  • 암호화 알고리즘이 지정된 경우 템플릿에서 암호화 알고리즘을 검색하고 EncryptionAlgorithm 속성을 설정합니다.
  • 가능하면 EncryptionStrength 속성을 설정합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 certenroll.h

추가 정보

IX509CertificateRequestCmc2