2017-01-06 6 views
0

X509Store.Certificatesコレクションから欠落している:私はコンソールに表示されたサムプリントのリストを解析し証明書は、私は私のPC上で、次のコードをテストしてい

private static void Main(string[] args) 
{ 
    X509Store x509Store = new X509Store(StoreName.My, StoreLocation.LocalMachine); 

    x509Store.Open(OpenFlags.ReadOnly); 

    foreach (var x509StoreCertificate in x509Store.Certificates) 
    { 
     Console.WriteLine(x509StoreCertificate.Thumbprint); 
    } 

    x509Store.Close(); 

    Console.WriteLine("Finished."); 
    Console.ReadLine(); 
} 

、私はそこにあることに気づきました私が今日インポートした証明書はリストには表示されません。

  • オープンMMCをしてCertificatesスナップインを追加します。私は次のように行われていた輸入CERT

  • 私はPersonalTrusted Root Certification Authorities両方で
  • Computer accountレベルでのスナップインを開くには、私は.PFX証明書ファイルをインポートしました。

上記を実行した後、私は言及した両方の領域の証明書リストで証明書を見ることができます。実際に、私は次のPowerShellのスクリプトを実行すると:Directory: Microsoft.PowerShell.Security\Certificate::LocalMachine\Myはそれらの一つであると

cls 
Set-Location Cert:\LocalMachine 
dir -Recurse | where {$_.Thumbprint -ne $null -and $_.Thumbprint.ToLower() -eq "‎‎thumbprint omitted"} 

それは、証明書の2箇所を発見します。

C#コンソールアプリがCertificatesコレクションにこの証明書をリストしていない理由はわかりません。

明らかに何かが間違っているかもしれませんが、助けていただければ幸いです。

答えて

0

Urgh :(

は、私は正面からそのセグメントを除去した後。それは私が最初に見ることができなかった文字列の先頭で„を持っていた意味証明書のプロパティ]ダイアログボックスからの拇印をコピーしていたが判明します私のコードは、ヒッチなしで証明書を見つけました。

関連する問題