Функции внешних свойств
Свойства используются для связывания значения с сертификатом. Свойства никогда не отправляются в центр сертификации (ЦС) и не обрабатываются и не хранятся в сертификате. Как правило, они связываются с сертификатом после получения сертификата из ЦС и перед сохранением в хранилище. Свойства сохраняются в хранилище вместе с сертификатом. CertEnroll.dll реализует интерфейс ICertProperty и следующие интерфейсы, производные от ICertProperty:
- ICertPropertyArchived
- ICertPropertyArchivedKeyHash
- ICertPropertyAutoEnroll
- ICertPropertyBackedUp
- ICertPropertyDescription
- ICertPropertyEnrollment
- ICertPropertyFriendlyName
- ICertPropertyKeyProvInfo
- ICertPropertyRenewal
- ICertPropertyRequestOriginator
- ICertPropertySHA1Hash
Каждый из следующих разделов определяет функцию, экспортированную Xenroll.dll для управления свойствами внешних сертификатов. В каждом разделе также описывается, как использовать CertEnroll.dll для замены функции, или указано, что сопоставление между двумя библиотеками не существует:
- addBlobPropertyToCertificateWStr
- GetPrivateKeyArchiveCertificate
- resetBlobProperties
- SetPrivateKeyArchiveCertificate
- SetSignerCertificate
- ThumbPrintWStr
- Связанные темы
addBlobPropertyToCertificateWStr
Функция addBlobPropertyToCertificateWStr в Xenroll.dll добавляет свойство в сертификат.
В CertEnroll.dll все объекты, производные от ICertProperty , реализуют метод SetValueOnCertificate , который можно использовать для связывания свойства с сертификатом. Кроме того, объект IX509Enrollment напрямую реализует свойства CertificateFriendlyName и CertificateDescription .
GetPrivateKeyArchiveCertificate
Функция GetPrivateKeyArchiveCertificate в Xenroll.dll извлекает сертификат exchange, используемый для архивации закрытого ключа.
Вы можете использовать объект IX509CertificateRequestCmc в CertEnroll.dll, чтобы создать запрос для ЦС для архивации закрытого ключа. Необходимо получить сертификат Exchange из ЦС и использовать открытый ключ , содержащийся в этом сертификате, для шифрования закрытого ключа, который вы отправляете для архивации. Чтобы указать или получить сертификат exchange ЦС, вызовите свойство KeyArchivalCertificate для этого объекта.
resetBlobProperties
Функция resetBlobProperties в Xenroll.dll удаляет коллекцию свойств из сертификата.
В CertEnroll.dll все объекты свойств, производные от ICertProperty , реализуют свойство RemoveFromCertificate , которое можно использовать для отмены связи свойства с сертификатом.
SetPrivateKeyArchiveCertificate
Функция SetPrivateKeyArchiveCertificate в Xenroll.dll указывает сертификат exchange, используемый для архивации закрытого ключа.
Вы можете использовать объект IX509CertificateRequestCmc в CertEnroll.dll, чтобы создать запрос для ЦС для архивации закрытого ключа. Необходимо получить сертификат Exchange из ЦС и использовать открытый ключ, содержащийся в этом сертификате, для шифрования закрытого ключа, который вы отправляете для архивации. Чтобы указать или получить сертификат exchange ЦС, вызовите свойство KeyArchivalCertificate для этого объекта.
SetSignerCertificate
Функция SetSignerCertificate в Xenroll.dll Указывает сертификат подписывающего.
Объект ISignerCertificate в CertEnroll.dll можно использовать для подписания запроса PKCS 7, CMC или самозаверяющего сертификата. Объект можно инициализировать с помощью существующего сертификата подписи и связать его с запросом, вызвав одно из следующих свойств:
- SignerCertificates в IX509CertificateRequestCmc
- SignerCertificate в IX509CertificateRequestPkcs7
- SignerCertificate в IX509CertificateRequestCertificate
Кроме того, при инициализации запроса CMC из внутреннего запроса и шаблона или инициализации запроса PKCS #7 из существующего запроса может быть задан сертификат подписи.
ThumbPrintWStr
Функция ThumbPrintWStr в Xenroll.dll задает или извлекает значение хэша сертификата.
В CertEnroll.dll объект ICertPropertySHA1Hash можно использовать для получения хэш-значения (отпечатка), созданного путем вызова метода InitializeFromCertificate .
Связанные темы
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по