IX509CertificateRequestCmc2::InitializeFromTemplate 메서드(certenroll.h)
InitializeFromTemplate 메서드는 템플릿을 사용하여 인증서 요청을 초기화합니다.
구문
HRESULT InitializeFromTemplate(
[in] X509CertificateEnrollmentContext context,
[in] IX509EnrollmentPolicyServer *pPolicyServer,
[in] IX509CertificateTemplate *pTemplate
);
매개 변수
[in] context
요청된 인증서가 컴퓨터를 대신하여 작동하는 최종 사용자, 컴퓨터 또는 관리자를 위한 것인지 여부를 지정하는 X509CertificateEnrollmentContext 열거형 형식의 값입니다. 다음 값 중 하나일 수 있습니다.
값 | 의미 |
---|---|
|
최종 사용자에 대해 인증서가 요청되고 있습니다. |
|
컴퓨터에 대해 인증서가 요청되고 있습니다. |
|
컴퓨터 대신 작동하는 관리자가 인증서를 요청합니다. |
[in] pPolicyServer
pTemplate 매개 변수로 지정된 템플릿을 포함하는 CEP(인증서 등록 정책) 서버를 나타내는 IX509EnrollmentPolicyServer 개체에 대한 포인터입니다.
[in] pTemplate
초기화 중에 사용할 템플릿을 나타내는 IX509CertificateTemplate 개체에 대한 포인터입니다.
반환 값
함수가 성공하면 함수는 S_OK 반환합니다.
함수가 실패하면 오류를 나타내는 HRESULT 값을 반환합니다. 가능한 값에는 다음 표에 있는 값이 포함되지만, 이에 국한되는 것은 아닙니다. 일반적인 오류 코드 목록은 일반적인 HRESULT 값을 참조하세요.
반환 코드 | 설명 |
---|---|
|
pPolicyServer 및 pTemplate 매개 변수는 NULL일 수 없습니다. |
|
인증서 요청 개체가 이미 초기화되었습니다. |
설명
InitializeFromTemplate 메서드는 다음 컬렉션을 만듭니다.
- ICryptAttributes 컬렉션입니다.
- IX509Extensions 컬렉션입니다.
- 기본 XCN_OID_KEY_USAGE 및 XCN_OID_BASIC_CONSTRAINTS2 개체 식별자가 채워진 IObjectIds 컬렉션입니다.
- 새 요청에서 표시하지 않을 특성 및 확장 OID에 대한 빈 IObjectIds 컬렉션입니다.
그런 다음 메서드는 템플릿을 검사하고 다음 작업을 수행합니다.
- 템플릿에서 지정한 확장을 IX509Extensions 컬렉션에 추가합니다 .
- 템플릿이 중요하지 않음을 나타내는 경우 컬렉션에서 기본 중요 확장(XCN_OID_KEY_USAGE 및 XCN_OID_BASIC_CONSTRAINTS2)을 제거합니다. 템플릿에서 중요로 표시된 OID가 추가됩니다.
- 템플릿이 대칭 알고리즘을 지원하는 경우 SmimeCapabilities 속성을 설정합니다.
- 템플릿에 불연속 서명 알고리즘 OID가 필요한 경우 AlternateSignatureAlgorithm 속성을 설정합니다.
- IX509SignatureInformation 개체를 만듭니다.
- 템플릿에 알고리즘을 지정하고 IX509SignatureInformation 개체에 설정하는 경우 해시 알고리즘 OID를 만듭니다.
- 알고리즘이 템플릿에 지정된 경우 비대칭 암호화 알고리즘 OID를 만들고 IX509SignatureInformation 개체에 설정합니다.
- 템플릿 설정에서 많은 IX509PrivateKey 속성을 채웁니다.
CSPInformations 속성이 NULL이면 메서드는 컴퓨터에 설치된 공급자로부터 ICspInformations 컬렉션을 만듭니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 7 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 R2 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | certenroll.h |