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]

검색 조건을 포함하는 변형입니다. 이 데이터는 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 루트 기관"
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