인증서 정렬 및 필터링

이 페이지에서는 Certificate Authority Service의 ListCertificates API 호출에서 반환하는 인증서를 정렬하고 필터링하는 방법을 설명합니다.

정렬 지원

기본적으로 ListCertificates API 호출은 create_time 필드를 기준으로 정렬된 인증서를 반환하며, 가장 최근 인증서가 먼저 나열됩니다. 다른 정렬 순서는 지정할 수 없습니다.

필터링 지원

다음 필드를 사용하여 ListCertificates API 호출에서 반환되는 인증서를 필터링할 수 있습니다.

필드 이름 필드 유형 지원되는 연산자
create_time timestamp <, >, <=, >=, =, !=
update_time timestamp <, >, <=, >=, =, !=
certificate_description.subject_description.not_after_time timestamp <, >, <=, >=, =, !=
certificate_description.subject_description.not_before_time timestamp <, >, <=, >=, =, !=
certificate_description.cert_fingerprint.sha256_hash 문자열 =, !=
certificate_description.subject_description.hex_serial_number 문자열 =, !=
certificate_description.subject_description.subject.common_name 문자열 =, !=
certificate_description.subject_description.subject.country_code 문자열 =, !=
certificate_description.subject_description.subject.organization 문자열 =, !=
certificate_description.subject_description.subject.organizational_unit 문자열 =, !=
certificate_description.subject_description.subject.locality 문자열 =, !=
certificate_description.subject_description.subject.province 문자열 =, !=
certificate_description.subject_description.subject.street_address 문자열 =, !=
certificate_description.subject_description.subject.postal_code 문자열 =, !=
certificate_description.subject_description.subject_alt_name.dns_names 문자열 : (HAS 연산자)
certificate_description.x509_description.key_usage.extended_key_usage.client_auth 부울 =, !=
certificate_description.x509_description.key_usage.extended_key_usage.server_auth 부울 =, !=
라벨 매핑 : (HAS 연산자)
certificate_template 문자열 =, !=

(https://google.aip.dev/160#has-operator)

참고: certificate_description.x509_description.key_usage.extended_key_usage.client_authcertificate_description.x509_description.key_usage.extended_key_usage.server_auth 필드는 각각의 확장 키 사용이 존재하는지 나타내는 불리언입니다.

필터링 구문

필터링 구문은 다음과 같은 제한사항이 있으며 AIP 160에 설정된 API 필터링 안내를 따릅니다.

  • 최상위 AND 연산자만 지원됩니다. 다른 모든 항목(예: OR, NOT, 중첩 연산자 또는 이러한 연산자의 조합)은 지원되지 않습니다.

    • 유효: 필터가 최상위 AND 연산자만 사용합니다.

      create_time>"2020-08-21T11:30:00.11-05:00" AND certificate_description.x509_description.key_usage.extended_key_usage.server_auth=true
      
    • 유효하지 않음: 필터가 OR 연산자를 사용합니다.

       create_time>"2020-08-21T11:30:00.11-05:00" OR certificate_description.x509_description.key_usage.extended_key_usage.server_auth=true
      
    • 유효하지 않음: 필터가 중첩된 연산자를 사용합니다.

       (create_time>"2020-08-21T11:30:00.11-05:00" AND certificate_description.x509_description.key_usage.extended_key_usage.server_auth=true) AND certificate_description.subject_description.subject.common_name="foo.com"
      
  • DNS 라벨의 서픽스 일치를 지원하는 certificate_description.subject_description.subject_alt_name.dns_names 필드를 제외하고 와일드 카드 일치(* 사용)는 지원되지 않습니다.

    • 유효: 필터가 와일드 카드 서픽스 일치를 비교합니다.

      certificate_description.subject_description.subject_alt_name.dns_names:"*.foo.com"
      
    • 유효하지 않음: 필터가 와일드 카드 프리픽스 일치를 비교합니다.

      certificate_description.subject_description.subject_alt_name.dns_names:"foo.*"
      
    • 유효하지 않음: 필터가 지원되지 않는 필드의 와일드 카드를 비교합니다.

      "certificate_description.subject_description.hex_serial_number"="*3d3"
      

다음 단계