서명 템플릿을 기반으로 발급된 인증서 찾기

서명 템플릿을 기반으로 발급된 인증서 찾기

서명 템플릿을 기반으로 내 CA에서 발급된 인증서를 쿼리하는 방법을 찾고 있습니다. 다음은 제가 사용하기 시작한 것입니다(PSPKI 4.0.0 모듈 기반).

$AllCerts= Get-CertificationAuthority -name CA_Authority | Get-IssuedRequest -Property Email,CertificateTemplate, CertificateTemplateOID
$RelevantInfo = ($AllCerts | ?{$_.CertificateTemplate -eq 'WebServer' -Or $_.CertificateTemplate -eq 'CustomTemplate'})

...그러나 쿼리는 'CustomTemplate' 일치 항목을 찾지 못합니다. 와일드카드 논리를 사용해 보기도 합니다.

$RelevantInfo = ($AllCerts | ?{$_.CertificateTemplate -eq 'WebServer' -Or $_.CertificateTemplate -like '*CustomTemplateName*'})

실행하면 값이 표시되는 것을 볼 수 있습니다.

Get-CertificateTemplate | Select Name, DisplayName, OID 

그러나 쿼리는 'CustomTemplateName'과 일치하는 항목을 찾지 못합니다. 발급된 인증서 템플릿에 대한 '친숙한 이름' 정보를 실제로 얻을 수 있는 방법이 있나요?

답변1

사용자 정의 템플릿의 경우 $row.CertificateTemplate속성에는 이름이 아닌 템플릿 OID(객체 식별자)가 포함됩니다. 이름은 V1 템플릿(내장 및 편집 불가능)에 대해서만 반환됩니다.

따라서 귀하의 경우에는 먼저 요청된 템플릿 OID를 얻은 다음 필터링해야 합니다.

$AllCerts= Get-CertificationAuthority -name CA_Authority | Get-IssuedRequest -Property Email,CertificateTemplate, CertificateTemplateOID
$OID = (Get-CertificateTemplate -Name 'CustomTemplate').Oid.Value
$RelevantInfo = ($AllCerts | ?{$_.CertificateTemplate -eq 'WebServer' -Or $_.CertificateTemplate -eq $OID})

관련 정보