次の方法で共有


ICertificates2::Find メソッド

[CAPICOM は、Windows Server 2008、Windows Vista、および Windows XP のオペレーティング システムで使用できる 32 ビットのみのコンポーネントです。 代わりに、System.Security.Cryptography.X509Certificates 名前空間で X509Certificate2Collectionクラスを使用します。

Find メソッドは、指定した検索条件に一致するすべての証明書を含む Certificates オブジェクトを返します。 このメソッドは CAPICOM 2.0 で導入されました。

構文

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

パラメーター

FindType [in]

varCriteriaパラメーターで指定された一致条件の種類を指定するCAPICOM_CERTIFICATE_FIND_TYPE列挙体の値。 次の表に、それぞれの値を示します。

[値] 説明
CAPICOM_CERTIFICATE_FIND_SHA1_HASH
varCriteria パラメーターで指定された SHA1 ハッシュと一致する SHA1 ハッシュを持つ証明書を返します。
CAPICOM_CERTIFICATE_FIND_SUBJECT_NAME
サブジェクト名が varCriteria パラメーターで指定されたサブジェクト名と正確または部分的に一致する証明書を返します。 この呼び出しでは、サブジェクト名フィールドのみが検索されます。
CAPICOM_CERTIFICATE_FIND_ISSUER_NAME
発行者名が varCriteria パラメーターで指定された発行者名と正確または部分的に一致する証明書を返します。 この呼び出しでは、発行者名フィールドのみが検索されます。
CAPICOM_CERTIFICATE_FIND_ROOT_NAME
varCriteria パラメーターで指定されたルートサブジェクト名と完全または部分的に一致するルートサブジェクト名を持つ証明書を返します。 この呼び出しにより、チェーンが作成されます。 この呼び出しでは、ルート証明書のサブジェクト名フィールドを検索します。
CAPICOM_CERTIFICATE_FIND_TEMPLATE_NAME
テンプレート名が varCriteria パラメーターで指定されたテンプレート名と一致する証明書を返します。
CAPICOM_CERTIFICATE_FIND_EXTENSION
varCriteria パラメーターで指定された拡張機能と一致する拡張機能を持つ証明書を返します。
CAPICOM_CERTIFICATE_FIND_EXTENDED_PROPERTY
varCriteria パラメーターで指定された値を持つ拡張プロパティを明示的に含む、ストア内の証明書を返します。
CAPICOM_CERTIFICATE_FIND_APPLICATION_POLICY
拡張キー使用法拡張、アプリケーション ポリシー拡張機能、または varCriteria パラメーターで指定された拡張プロパティを持つ、ストア内の証明書を返します。
CAPICOM_CERTIFICATE_FIND_CERTIFICATE_POLICY
varCriteria パラメーターで指定された証明書ポリシー拡張機能のポリシー OID を含む証明書を返します。
CAPICOM_CERTIFICATE_FIND_TIME_VALID
時刻が有効な証明書を返します。
CAPICOM_CERTIFICATE_FIND_TIME_NOT_YET_VALID
時刻がまだ有効でない証明書を返します。
CAPICOM_CERTIFICATE_FIND_TIME_EXPIRED
有効期限が切れた証明書を返します。
CAPICOM_CERTIFICATE_FIND_KEY_USAGE
varCriteria パラメーターで指定された KeyUsage 拡張機能のキー使用法を含む証明書を返します。 KeyUsage 拡張機能が存在しない場合、すべてのキー使用法は使用できないと見なされます。

 

varCriteria [in, optional]

検索条件を含むバリアント型 ( variant ) の値を指定します。 このデータは 、FindType パラメーターで指定されたデータの型と一致する必要があります。 FindType パラメーターの値がCAPICOM_CERTIFICATE_FIND_TIME_VALID、CAPICOM_CERTIFICATE_FIND_TIME_NOT_YET_VALID、またはCAPICOM_CERTIFICATE_FIND_TIME_EXPIREDで、このパラメーターに値を渡さない場合、現在の時刻が想定されます。 各データ型の例については、「解説」を参照してください。 既定値は 0 です。

bFindValidOnly [in, optional]

有効な証明書のみが返されるかどうかを示すブール値。 既定値は false です。これは、検索条件に一致するすべての証明書が返されることを示します。

true の場合、検索では次の種類の証明書は返されません。

  • 有効期限が切れているか、まだ有効ではない証明書。
  • 証明書が正しくチェーンされていません。
  • 署名に問題がある証明書。
  • 失効した証明書。

戻り値

検索の結果を含む Certificates オブジェクト。

CAPICOM 2.1: 返される Certificates オブジェクトには、検索が行われたコレクション内の証明書への参照が含まれています。 返された Certificates オブジェクト内の証明書に加えられた変更は、そのコレクションに反映されます。

CAPICOM 2.0、CAPICOM 2.0.0.1、CAPICOM 2.0.0.2、および CAPICOM 2.0.0.3: 返される Certificates オブジェクトには、検索が行われたコレクション内の証明書のコピーが含まれています。 返 された Certificates オブジェクト内の証明書に加えられた変更は、そのコレクションには反映されません。

注釈

次の例は、さまざまな検索条件の種類で使用できる検索条件を示しています。

FindType パラメーター 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
"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
"コード署名"
CAPICOM_CERTIFICATE_FIND_CERTIFICATE_POLICY "1.3.6.1.5.5.7.3.4.3.5"
"企業の高い保証"
CAPICOM_CERTIFICATE_FIND_TIME_VALID #04/15/2002、午後 6:00#
CAPICOM_CERTIFICATE_FIND_TIME_NOT_YET_VALID #04/15/2002、午後 6:00#
CAPICOM_CERTIFICATE_FIND_TIME_EXPIRED #04/15/2002、午後 6:00#
CAPICOM_CERTIFICATE_FIND_KEY_USAGE CAPICOM_ENCIPHER_ONLY_KEY_USAGE

 

要件

要件
クライアント サポートの終了
Windows Vista
サーバー サポートの終了
Windows Server 2008
再頒布可能パッケージ
Windows Server 2003 および Windows XP の CAPICOM 2.0 以降
[DLL]
Capicom.dll

こちらもご覧ください

証明書

CAPICOM_OID