2017-01-06 1 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 스냅인을 추가 : 나는 다음과 같은 방식으로 이루어졌다 가져온 인증

    .

  • 나는 모두 Personal에서 Computer account 수준에서
  • 을 스냅인을 열고 Trusted Root Certification Authorities은 내가 .PFX 인증서 파일을 가져옵니다.

위 작업을 수행 한 후에 내가 언급 한 두 영역의 인증서 목록에서 인증서를 볼 수 있습니다. 사실, 나는 다음과 같은 파워 쉘 스크립트를 실행하면 Directory: Microsoft.PowerShell.Security\Certificate::LocalMachine\My 그들 중 하나 인 상태

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

그것은, CERT는 두 위치를 발견합니다.

그래서 C# 콘솔 앱이 Certificates 컬렉션에이 인증서를 나열하지 않는 이유는 분명하지 않습니다.

나는 분명히 뭔가를 놓쳤을 지 모르지만, 어떤 도움을 주시면 감사하겠습니다.

답변

0

Urgh :(

내가 정면에서 해당 세그먼트를 제거한 후. 그것이 내가 처음 볼 수없는 문자열의 시작에 „을 의미했다 CERT는 속성 대화 상자에서 지문을 복사했다 밝혀 지문의 내 코드가 차질없이 인증서를 찾았습니다.

관련 문제