Compartilhar via


Método ICspStatuses::get_ItemByOrdinal (certenroll.h)

A propriedade ItemByOrdinal recupera um objeto ICspStatus da coleção por número ordinal.

Esta propriedade é somente para leitura.

Sintaxe

HRESULT get_ItemByOrdinal(
  LONG       Ordinal,
  ICspStatus **ppValue
);

Parâmetros

Ordinal

ppValue

Valor retornado

Nenhum

Comentários

A ordem ordinal dos objetos ICspStatus na coleção pode variar cada vez que a coleção é enumerada por vários motivos, incluindo, mas não se limitando a, o seguinte:

  • Configurações do modelo de solicitação de certificado
  • Valores de propriedade para o provedor criptográfico
  • Valores de propriedade de chave privada

Por exemplo, suponha que o modelo de versão 2 escolhido para criar uma solicitação de certificado especifique que o certificado só pode ser usado para assinatura (o atributo de modelo pKIDefaultKeySpec é XCN_AT_SIGNATURE) e que o provedor padrão é o Provedor criptográfico RSA e AES avançado da Microsoft. Observe que o modelo restringe o certificado à assinatura, embora o provedor dê suporte a algoritmos de criptografia e assinatura. Ou seja, a propriedade KeySpec no provedor é uma combinação bit a bit das constantes XCN_AT_KEYEXCHANGE e XCN_AT_SIGNATURE, mas o atributo de modelo pKIDefaultKeySpec dá suporte apenas a XCN_AT_SIGNATURE.

Os objetos ICspStatus na coleção serão ordenados da seguinte maneira:

  • Dos objetos ICspStatus enumerados para esse provedor, aqueles associados a algoritmos de assinatura (XCN_AT_SIGNATURE) são ordenados primeiro (valor ordinal inferior) e suas propriedades Display e Selected estão habilitadas.
    Nota Se o atributo de modelo pKIDefaultKeySpec tivesse sido XCN_AT_KEYEXCHANGE, os algoritmos de criptografia seriam ordenados primeiro.
     
  • Dos objetos ICspStatus enumerados para esse provedor, aqueles associados a algoritmos de criptografia (XCN_AT_KEYEXCHANGE) são ordenados posteriormente (valores ordinais mais altos) e suas propriedades Display e Selected não estão habilitadas.
  • Para todos os outros provedores de CryptoAPI instalados que dão suporte a algoritmos de assinatura assimétrica (XCN_AT_SIGNATURE), mas que não estão associados ao provedor especificado, a propriedade Display está habilitada e a propriedade Selected não está habilitada.
  • Para todos os outros provedores de CryptoAPI instalados que dão suporte a algoritmos de criptografia assimétrica (XCN_AT_KEYEXCHANGE), as propriedades Display e Selected não estão habilitadas.
  • Para todos os provedores instalados da API de Criptografia: CNG (Próxima Geração), as propriedades Display e Selected não estão habilitadas.

Para outro exemplo, suponha que um modelo de versão 3 especifique um provedor E algoritmo CNG específicos. Esse par de provedor/algoritmo (objeto ICspStatus ) é ordenado primeiro, habilitado para exibição e selecionado. Todos os outros algoritmos compatíveis com esse provedor são ordenados posteriormente, não habilitados para exibição e não selecionados. Todos os outros provedores que dão suporte ao algoritmo especificado serão ordenados posteriormente ainda, habilitados para exibição, mas não selecionados. Todos os pares de provedor/algoritmo restantes não serão habilitados para exibição e não serão selecionados.

Nota Os provedores de CNG não dão suporte ao conceito de uso pretendido do KeySpec . Eles retornam XCN_AT_NONE para esse valor de propriedade.

 

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho certenroll.h
DLL CertEnroll.dll

Confira também

ICspStatus

ICspStatuses