Метод ICspStatus::get_Ordinal (certenroll.h)
Свойство Ordinal указывает или извлекает положение объекта ICspStatus в коллекции ICspStatuses .
Это свойство является чтением и записью.
Синтаксис
HRESULT get_Ordinal(
LONG *pValue
);
Параметры
pValue
Возвращаемое значение
None
Remarks
Чтобы выполнить итерацию по коллекции ICspStatuses по порядковой номеру, вызовите свойство ItemByOrdinal . Порядковый номер объектов ICspStatus в коллекции может меняться при каждом перечислении коллекции по ряду причин, включая, помимо прочего, следующие:
- Параметры шаблона запроса сертификата
- Значения свойств для поставщика шифрования
- Значения свойств закрытого ключа
Например, предположим, что шаблон версии 2, выбранный для создания запроса сертификата, указывает, что сертификат может использоваться только для подписи (атрибут шаблона pKIDefaultKeySpec XCN_AT_SIGNATURE), а поставщиком по умолчанию являются microsoft Enhanced RSA и поставщик шифрования AES. Обратите внимание, что шаблон ограничивает сертификат подписыванием, даже если поставщик поддерживает как алгоритмы шифрования, так и подписи. То есть свойство KeySpec поставщика представляет собой побитовое сочетание констант XCN_AT_KEYEXCHANGE и XCN_AT_SIGNATURE, но атрибут шаблона pKIDefaultKeySpec поддерживает только XCN_AT_SIGNATURE.
Объекты ICspStatus в коллекции будут упорядочены следующим образом:
- Из объектов ICspStatus , перечисленных для этого поставщика, сначала упорядочиваются те, которые связаны с алгоритмами подписи (XCN_AT_SIGNATURE) (более низкое порядковое значение), а их свойства Display и Selected включены. Примечание Если атрибут шаблона pKIDefaultKeySpec был XCN_AT_KEYEXCHANGE, сначала будут упорядочены алгоритмы шифрования.
- Из объектов ICspStatus , перечисленных для этого поставщика, те, которые связаны с алгоритмами шифрования (XCN_AT_KEYEXCHANGE), упорядочены позже (более высокие порядковые значения), а их свойства Display и Selected не включены.
- Для всех других установленных поставщиков CryptoAPI, которые поддерживают асимметричные алгоритмы подписывания (XCN_AT_SIGNATURE), но не связаны с указанным поставщиком, свойство Display включено, а свойство Selected — не включено.
- Для всех других установленных поставщиков CryptoAPI, поддерживающих алгоритмы асимметричного шифрования (XCN_AT_KEYEXCHANGE), свойства Display и Selected не включены.
- Для всех установленных поставщиков API шифрования следующего поколения (CNG) свойства Display и Selected не включены.
В качестве другого примера предположим, что шаблон версии 3 указывает один конкретный поставщик CNG и алгоритм. Эта пара "поставщик-алгоритм" (объект ICspStatus ) сначала упорядочена, включена для отображения и выбрана. Все остальные алгоритмы, поддерживаемые этим поставщиком, упорядочены позже, не включены для отображения и не выбираются. Все остальные поставщики, поддерживающие указанный алгоритм, будут упорядочены позже, все еще включены для отображения, но не выбраны. Все оставшиеся пары "поставщик-алгоритм" не будут включены для отображения и не будут выбраны.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | certenroll.h |
DLL | CertEnroll.dll |