Compartilhar via


Método ICertificates2::Find

[CAPICOM é um componente somente de 32 bits disponível para uso nos seguintes sistemas operacionais: Windows Server 2008, Windows Vista e Windows XP. Em vez disso, use a classe X509Certificate2Collection no namespace System.Security.Cryptography.X509Certificates .]

O método Find retorna um objeto Certificates que contém todos os certificados que correspondem aos critérios de pesquisa especificados. Esse método foi introduzido no CAPICOM 2.0.

Sintaxe

Certificates.Find( _
  ByVal FindType, _
  [ ByVal varCriteria ], _
  [ ByVal bFindValidOnly ] _
)

Parâmetros

FindType [in]

Um valor da enumeração CAPICOM_CERTIFICATE_FIND_TYPE que especifica o tipo de critério de correspondência fornecido no parâmetro varCriteria . A tabela a seguir mostra os valores possíveis.

Valor Significado
CAPICOM_CERTIFICATE_FIND_SHA1_HASH
Retorna certificados com um hash SHA1 que corresponde ao hash SHA1 especificado no parâmetro varCriteria .
CAPICOM_CERTIFICATE_FIND_SUBJECT_NAME
Retorna certificados cujo nome da entidade corresponde exatamente ou parcialmente ao nome da entidade especificado no parâmetro varCriteria . Essa chamada pesquisa apenas o campo nome da entidade.
CAPICOM_CERTIFICATE_FIND_ISSUER_NAME
Retorna certificados cujo nome do emissor corresponde exatamente ou parcialmente ao nome do emissor especificado no parâmetro varCriteria . Essa chamada pesquisa apenas o campo nome do emissor.
CAPICOM_CERTIFICATE_FIND_ROOT_NAME
Retorna certificados cujo nome de entidade raiz corresponde exatamente ou parcialmente ao nome da entidade raiz especificado no parâmetro varCriteria . Essa chamada cria uma cadeia. Essa chamada pesquisa o campo nome da entidade do certificado raiz.
CAPICOM_CERTIFICATE_FIND_TEMPLATE_NAME
Retorna certificados cujo nome de modelo corresponde ao nome do modelo especificado no parâmetro varCriteria .
CAPICOM_CERTIFICATE_FIND_EXTENSION
Retorna certificados que têm uma extensão que corresponde à extensão especificada no parâmetro varCriteria .
CAPICOM_CERTIFICATE_FIND_EXTENDED_PROPERTY
Retorna certificados no repositório que contêm explicitamente uma propriedade estendida com o valor especificado no parâmetro varCriteria .
CAPICOM_CERTIFICATE_FIND_APPLICATION_POLICY
Retorna certificados no repositório que têm uma extensão de uso de chave aprimorada, uma extensão de política de aplicativo ou uma propriedade estendida especificada no parâmetro varCriteria .
CAPICOM_CERTIFICATE_FIND_CERTIFICATE_POLICY
Retorna certificados que contêm o OID de política na extensão de Política de Certificado especificada no parâmetro varCriteria .
CAPICOM_CERTIFICATE_FIND_TIME_VALID
Retorna certificados cujo tempo é válido.
CAPICOM_CERTIFICATE_FIND_TIME_NOT_YET_VALID
Retorna certificados cujo tempo ainda não é válido.
CAPICOM_CERTIFICATE_FIND_TIME_EXPIRED
Retorna certificados cujo tempo expirou.
CAPICOM_CERTIFICATE_FIND_KEY_USAGE
Retorna certificados que contêm usos de chave na extensão KeyUsage especificada no parâmetro varCriteria . Se a extensão KeyUsage não estiver presente, todos os usos de chave serão considerados indisponíveis.

 

varCriteria [in, opcional]

Uma variante que contém os critérios de pesquisa. Esses dados devem corresponder ao tipo de dados especificado no parâmetro FindType . Se o valor do parâmetro FindType for CAPICOM_CERTIFICATE_FIND_TIME_VALID, CAPICOM_CERTIFICATE_FIND_TIME_NOT_YET_VALID ou CAPICOM_CERTIFICATE_FIND_TIME_EXPIRED e você não passar um valor para esse parâmetro, a hora atual será assumida. Para obter exemplos de cada tipo de dados, consulte Comentários. O valor padrão é 0.

bFindValidOnly [in, opcional]

Um valor booliano que indica se apenas os certificados válidos são retornados. O valor padrão é falso; isso indica que todos os certificados que correspondem aos critérios de pesquisa são retornados.

Se for true, a pesquisa não retornará os seguintes tipos de certificados:

  • Certificados cujo tempo expirou ou ainda não é válido.
  • Certificados não encadeados corretamente.
  • Certificados que têm problemas de assinatura.
  • Certificados revogados.

Valor retornado

Objeto Certificates que contém os resultados da pesquisa.

CAPICOM 2.1: O objeto Certificates retornado contém referências aos certificados na coleção na qual a pesquisa foi feita. Todas as alterações feitas nos certificados no objeto Certificates retornado são refletidas nessa coleção.

CAPICOM 2.0, CAPICOM 2.0.0.1, CAPICOM 2.0.0.2 e CAPICOM 2.0.0.3: O objeto Certificates retornado contém cópias dos certificados na coleção na qual a pesquisa foi feita. As alterações feitas nos certificados no objeto Certificates retornado não são refletidas nessa coleção.

Comentários

Os exemplos a seguir mostram possíveis critérios de pesquisa para os diferentes tipos de critérios de pesquisa.

Parâmetro FindType parâmetro varCriteria
CAPICOM_CERTIFICATE_FIND_SHA1_HASH 33F362434B577F844BB7226BE36F7D72EF9D9393
CAPICOM_CERTIFICATE_FIND_SUBJECT_NAME "NameOfPerson"
CAPICOM_CERTIFICATE_FIND_ISSUER_NAME "VeriSign"
CAPICOM_CERTIFICATE_FIND_ROOT_NAME "Microsoft Root Authority"
CAPICOM_CERTIFICATE_FIND_TEMPLATE_NAME "AutoEnrollEFS"
1.3.6.1.4.1.311.21.8.3692315854.1256661383.1690418588.4201632533.1741915387.2177932052
CAPICOM_CERTIFICATE_FIND_EXTENSION "2.5.29.31"
CAPICOM_OID_KEY_USAGE_EXTENSION
"Lista de Distribuição de CRL"
CAPICOM_CERTIFICATE_FIND_EXTENDED_PROPERTY CAPICOM_PROPID_KEY_PROV_INFO
CAPICOM_CERTIFICATE_FIND_APPLICATION_POLICY "1.3.6.1.5.5.7.3.3"
"1.3.6.1.5.5.7.3.4"
CAPICOM_OID_SERVER_AUTH_EKU
"Assinatura de código"
CAPICOM_CERTIFICATE_FIND_CERTIFICATE_POLICY "1.3.6.1.5.5.7.3.4.3.5"
"Alta Garantia Corporativa"
CAPICOM_CERTIFICATE_FIND_TIME_VALID Nº 15/04/2002, 18h #
CAPICOM_CERTIFICATE_FIND_TIME_NOT_YET_VALID Nº 15/04/2002, 18h #
CAPICOM_CERTIFICATE_FIND_TIME_EXPIRED Nº 15/04/2002, 18h #
CAPICOM_CERTIFICATE_FIND_KEY_USAGE CAPICOM_ENCIPHER_ONLY_KEY_USAGE

 

Requisitos

Requisito Valor
Fim do suporte ao cliente
Windows Vista
Fim do suporte ao servidor
Windows Server 2008
Redistribuível
CAPICOM 2.0 ou posterior no Windows Server 2003 e Windows XP
DLL
Capicom.dll

Confira também

Certificados

CAPICOM_OID