Интерфейс IX509CertificateRequestCmc (certenroll.h)
Интерфейс IX509CertificateRequestCmc представляет запрос на сертификат CMC (сообщение управления сертификатами через CMS). Запрос CMC всегда упаковывается в объект синтаксиса сообщений сертификата PKCS #7 (CMS). Таким образом, интерфейс IX509CertificateRequestCmc наследуется от интерфейса IX509CertificateRequestPkcs7 .
Запрос CMC содержит последовательности структур TAGgedAttribute, TaggedRequest и TaggedContentInfo ASN.1. Структура TaggedOtherMsg , указанная в RFC, не поддерживается.
CmcData ::= SEQUENCE
{
controlSequence ControlSequence,
reqSequence ReqSequence,
cmsSequence CmsSequence,
otherMsgSequence OtherMsgSequence
}
ControlSequence ::= SEQUENCE OF TaggedAttribute
ReqSequence ::= SEQUENCE OF TaggedRequest
CmsSequence ::= SEQUENCE OF TaggedContentInfo
OtherMsgSequence ::= SEQUENCE OF TaggedOtherMsg
TaggedAttribute ::= SEQUENCE
{
bodyPartID BodyPartID,
type EncodedObjectID,
values AttributeSetValue
}
TaggedRequest ::= CHOICE
{
tcr [0] IMPLICIT TaggedCertificationRequest
}
TaggedContentInfo ::= SEQUENCE
{
bodyPartID BodyPartID,
contentInfo ANY
}
BodyPartID ::= INTEGER (0..4294967295)
EncodedObjectID ::= OBJECT IDENTIFIER
AttributeSetValue ::= SET OF ANY
Запрос CMC может содержать запрос PKCS #10 в последовательности TaggedRequest или другой объект запроса CMC в последовательности TaggedContentInfo . Теоретических ограничений на возможное количество уровней вложенности нет, но центры сертификации обычно физически ограничивают размер запроса.
Последовательность TaggedAttribute содержит расширения и необязательные атрибуты. Дополнительные сведения см. в разделе Расширения и атрибуты CMC.
Наследование
Интерфейс IX509CertificateRequestCmc наследуется от IX509CertificateRequestPkcs7. IX509CertificateRequestCmc также имеет следующие типы членов:
Методы
Интерфейс IX509CertificateRequestCmc содержит следующие методы.
IX509CertificateRequestCmc::get_ArchivePrivateKey Указывает или извлекает логическое значение, указывающее, следует ли архивировать закрытый ключ в центре сертификации (ЦС). (Получить) |
IX509CertificateRequestCmc::get_CriticalExtensions Извлекает коллекцию IObjectIds, которая определяет расширения сертификатов версии 3, помеченные как критические. (IX509CertificateRequestCmc.get_CriticalExtensions) |
IX509CertificateRequestCmc::get_CryptAttributes Извлекает коллекцию ICryptAttributes необязательных атрибутов сертификата. (IX509CertificateRequestCmc.get_CryptAttributes) |
IX509CertificateRequestCmc::get_EncryptedKeyHash Извлекает хэш закрытого ключа для архивации. |
IX509CertificateRequestCmc::get_EncryptionAlgorithm Указывает или извлекает идентификатор объекта (OID) алгоритма, используемого для шифрования закрытого ключа для архивирования. (Получить) |
IX509CertificateRequestCmc::get_EncryptionStrength Задает или извлекает относительный уровень шифрования, применяемый к архивированному закрытому ключу. (Получить) |
IX509CertificateRequestCmc::get_KeyArchivalCertificate Указывает или извлекает сертификат шифрования центра сертификации (ЦС). (Получить) |
IX509CertificateRequestCmc::get_NameValuePairs Извлекает коллекцию IX509NameValuePairs, связанную с запросом сертификата. |
IX509CertificateRequestCmc::get_NullSigned Извлекает логическое значение, указывающее, является ли основная подпись в запросе сертификата пустой. |
IX509CertificateRequestCmc::get_SenderNonce Задает или извлекает массив байтов, содержащий nonce. (Получить) |
IX509CertificateRequestCmc::get_SignatureInformation Извлекает объект IX509SignatureInformation, содержащий сведения о основной сигнатуре, используемой для подписи запроса на сертификат. |
IX509CertificateRequestCmc::get_SignerCertificates Извлекает коллекцию сертификатов, используемых для подписания запроса. |
IX509CertificateRequestCmc::get_SuppressOids Извлекает коллекцию идентификаторов объектов расширений или атрибутов, которые должны быть подавлены из сертификата в процессе кодирования. |
IX509CertificateRequestCmc::get_TemplateObjectId Извлекает идентификатор объекта (OID) шаблона, используемого для создания запроса на сертификат. (IX509CertificateRequestCmc.get_TemplateObjectId) |
IX509CertificateRequestCmc::get_TransactionId Указывает или извлекает идентификатор транзакции, который можно использовать для отслеживания запроса или ответа на сертификат. (Получить) |
IX509CertificateRequestCmc::get_X509Extensions Извлекает коллекцию расширений, включенных в запрос сертификата. (IX509CertificateRequestCmc.get_X509Extensions) |
IX509CertificateRequestCmc::InitializeFromInnerRequestTemplateName Метод InitializeFromInnerRequestTemplateName инициализирует запрос сертификата из внутреннего объекта запроса и шаблона. |
IX509CertificateRequestCmc::p ut_ArchivePrivateKey Указывает или извлекает логическое значение, указывающее, следует ли архивировать закрытый ключ в центре сертификации (ЦС). (Put) |
IX509CertificateRequestCmc::p ut_EncryptionAlgorithm Указывает или извлекает идентификатор объекта (OID) алгоритма, используемого для шифрования закрытого ключа для архивирования. (Put) |
IX509CertificateRequestCmc::p ut_EncryptionStrength Задает или извлекает относительный уровень шифрования, применяемый к архивированному закрытому ключу. (Put) |
IX509CertificateRequestCmc::p ut_KeyArchivalCertificate Указывает или извлекает сертификат шифрования центра сертификации (ЦС). (Put) |
IX509CertificateRequestCmc::p ut_SenderNonce Задает или извлекает массив байтов, содержащий nonce. (Put) |
IX509CertificateRequestCmc::p ut_TransactionId Указывает или извлекает идентификатор транзакции, который можно использовать для отслеживания запроса или ответа на сертификат. (Put) |
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | certenroll.h |