Поделиться через


Интерфейс ICertificatePolicy (certenroll.h)

Интерфейс ICertificatePolicy можно использовать для указания политики сертификатов, которая определяет цель, для которой можно использовать сертификат. Политики собираются в объект ICertificatePolicies , который можно использовать для инициализации объекта IX509ExtensionCertificatePolicies или IX509ExtensionMSApplicationPolicies .

В следующем синтаксисе показана структура абстрактной синтаксической нотации 1 (ASN.1), используемая обоими объектами расширения. Значения расширения кодируются с помощью Distinguished Encoding Rules (DER) и включаются в запрос сертификата. Коллекция политик сертификатов состоит из последовательности идентификаторов объектов (OID) и необязательной последовательности квалификаторов политики для каждого идентификатора политики.

Примечание Квалификаторы политики, определенные интерфейсом IPolicyQualifier , используются расширением CertificatePolicies , но не расширением MSApplicationPolicies .

 

----------------------------------------------------------------------
-- CertificatePolicies
-- XCN_OID_CERT_POLICIES (2.5.29.32)
----------------------------------------------------------------------

CertificatePolicies ::= SEQUENCE OF PolicyInformation

PolicyInformation ::= SEQUENCE 
{
   policyIdentifier    EncodedObjectID,
   policyQualifiers    PolicyQualifiers OPTIONAL
}

PolicyQualifiers ::=  SEQUENCE OF PolicyQualifierInfo

PolicyQualifierInfo ::= SEQUENCE 
{
   policyQualifierId   EncodedObjectID,
   qualifier           NOCOPYANY OPTIONAL
}

Политики выдачи, определенные объектом IX509ExtensionCertificatePolicies , определяют степень доверия удостоверения, представленного в сертификате. Следующие политики являются предопределенными. Часть x.y.z каждого OID представляет случайно сгенерированную числовую последовательность, уникальную для каждого леса. Вы также можете создавать пользовательские идентификаторы OID для представления пользовательских политик выдачи.

Политика Описание
Все выпуски(2.5.29.32.0) Содержит все остальные политики. Обычно он назначается только сертификатам центра сертификации. Идентификатор идентификатора XCN_OID_ANY_CERT_POLICY.
Low Assurance(1.3.6.1.4.1.311.21.8.x.y.z.1.400) Указывает, что сертификат выдан без дополнительных требований к безопасности.
Medium Assurance (1.3.6.1.4.1.311.21.8.x.y.z.1.401) Указывает, что выдача сертификата имеет дополнительные требования к безопасности. Например, политика может требовать физического отображения субъекта сертификата перед центром сертификации.
High Assurance (1.3.6.1.4.1.311.21.8.x.y.z.1.402) Указывает, что сертификат выдан с наивысшим уровнем безопасности. Например, для выдачи сертификата агента восстановления ключей может потребоваться дополнительная проверка данных и цифровая подпись от назначенного утверждающего лица, так как пользователь, владеющий этим сертификатом, может восстановить материал закрытого ключа из ЦС.
 

Политики приложений, определенные объектом IX509ExtensionMSApplicationPolicies , позволяют приложению фильтровать сертификаты путем сравнения OID политики, которые оно будет принимать, с идентификаторами политики, содержащимися в сертификате. Расширение MSApplicationPolicies очень похоже на расширение EnhancedKeyUsage , но часто используется для сопоставления политик.

Наследование

Интерфейс ICertificatePolicy наследуется от интерфейса IDispatch . ICertificatePolicy также имеет следующие типы членов:

Методы

Интерфейс ICertificatePolicy содержит следующие методы.

 
ICertificatePolicy::get_ObjectId

Извлекает идентификатор объекта (OID) для объекта политики.
ICertificatePolicy::get_PolicyQualifiers

Извлекает коллекцию необязательных квалификаторов политики, которые можно применить к политике сертификатов.
ICertificatePolicy::Initialize

Инициализирует объект из идентификатора объекта (OID).

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header certenroll.h

См. также раздел

Интерфейсы CertEnroll

ICertificatePolicies

IDispatch

IX509ExtensionCertificatePolicies