"c:\ path \ MyCert.crt"などのドライブ上の特定のパスからの特定の証明書が取得しようとしています。インストールされていて、アクティブである場合。特定の証明書ファイル.crtまたは.cerなどがインストールされており、アクティブである場合
私は、次のしている:
表示$crt = New-Object System.Security.Cryptography.X509Certificates.X509Certificate;
$crt.Import("c:\path\MyCert.crt");
write-host "MyCert.crt expires after: " $crt.GetExpirationDateString();
$crt.GetName();
:
をMyCert.crtの有効期限が切れた後に:2021年11月12日2時12分31秒AM C = ...、O =」 ... "OU = ...、OU =" ... "、CN = ...
が試み:
[bool](dir cert:\LocalMachine\ | ? { $_.subject -like "cn=MyCert" })
が、これがあれば私に語ったかどうかわからないがそれはインストールされ、アクティブですか?
助けてもらえますか?
私はあなたが[証明書の拇印](http://security.stackexchange.comを比較するべきだと思います/ a/35694)、同じ名前の別の証明書ではなく、同じ証明書*であるかどうかをチェックします。あなたは「アクティブ」とは何を意味しますか?私は、証明書をインストールできるが、非アクティブであることに気づいていません。 – TessellatingHeckler
ありがとうTessellatingHeckler。ファイルから拇印をどのように取得し、cert:\ LocalHost \と比較するかを試してみます。アクティブでは、私はちょうど証明書が有効になっているかどうかを見たいと思っていたかもしれませんが、別の証明書を使用したい場合は、インストール時に証明書を無効または無効にする方法があるかもしれないと考えました。私はテスト目的のために推測する。今は、証明書がインストールされているときは、アクティブであることを知っていただきありがとうございます。 –