2011-06-23 2 views
6

Есть ли способ проверить C#, если сертификат конечного пользователя PKI установлен в пользовательском окне keystore (Personal)? (Исключение было бы?) Я бы передал некоторый атрибут, например Name.Проверьте, установлен ли сертификат конечного пользователя в хранилище ключей Windows?

ответ

6

Для поиска сертификатов в системе вы можете использовать класс X509Store. Ниже образца кода находит сертификат по имени субъекта «XYZ» в личном магазине текущего пользователя.

System.Security.Cryptography.X509Certificates.X509Store store = new System.Security.Cryptography.X509Certificates.X509Store(StoreName.My, StoreLocation.CurrentUser); 
store.Open(OpenFlags.ReadOnly); // Dont forget. otherwise u will get an exception. 
X509Certificate2Collection certs = store.Certificates.Find(X509FindType.FindBySubjectName,"XYZ",true); 
if(certs.Count > 0) 
{ 
    // Certificate is found. 
} 
else 
{ 
    // No Certificate found by that subject name. 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^