일련 번호로 X509 인증서를 받아야합니다. 일련 번호가 있으며이를 통해 반복되고 있으며 필요한 컬렉션의 일련 번호를 볼 수는 있지만 결코 발견되지 않습니다. 하지만 분명히X509 상점에서 SerialNumber의 인증서를 찾을 수 없습니다.
0091ED5F0CAED6AD52=0091ED5F0CAED6AD52
3D3233116A894CB244DB359DF99E7862=0091ED5F0CAED6AD52
첫 번째 I 루프 : 여기
X509Store store = new X509Store(StoreName.My, StoreLocation.LocalMachine);
store.Open(OpenFlags.ReadOnly);
foreach (X509Certificate2 cert in store.Certificates)
{
System.Web.HttpContext.Current.Response.Write (cert.SerialNumber + "=" + oauthCertificateFindValue + "<br/>");
if (cert.SerialNumber == oauthCertificateFindValue)
{
System.Web.HttpContext.Current.Response.Write("<br/>FOUND FOUND FOUND<br/>");
}
}
이 코드의 출력입니다 : 여기
은 구약 내가 적절한 일련 번호를보고하고 확인 내 디버그 코드 일련 번호와 일치하지만
if
은 항상 실패하며이 일련 번호를 기반으로 실제로 작업해야하는 항목도 실패합니다.
X509Certificate2Collection certificateCollection = store.Certificates.Find(x509FindType, oauthCertificateFindValue, false);
if (certificateCollection.Count == 0)
{
throw new ApplicationException(string.Format("An OAuth certificate matching the X509FindType '{0}' and Value '{1}' cannot be found in the local certificate store.", oauthCertificateFindType, oauthCertificateFindValue));
}
return certificateCollection[0];
여기서 내가 뭘 잘못하고 있니?
아무 것도 보이지 않습니다 ..'x509FindType'은 무엇입니까? 그것을 바꾸려고 했습니까? – PawanS
우연히 표준 Windows 인증서보기 대화 상자에서 일련 번호를 복사 했습니까? 대화 상자에서 복사 할 때 복사 한 문자열 시작 부분에 보이지 않는 문자가 삽입되어 조회가 실패하는 유사한 문제가 발견되었습니다. 'oauthCertificateFindValue.Length'가 일련 번호의 예상 길이인지 확인하십시오. (또한 16 진수 문자열로 표현하면 2로 나눌 수 있습니다). – Iridium
나는 certs를 반복하여 일련 번호를 얻었고 특별히 필요한 것을 찾는 사람들을 출력했습니다. – Slee