Comment faire pour récupérer tous les certificats dans votre X509Store
J'utilise le code suivant pour récupérer tous les certificats dans mon PC à partir d'un asp.net webapp. Les certificats collection est vide, et je ne comprends pas pourquoi.
J'ai essayé d'usurper l'identité de mon propre compte d'utilisateur et je n'ai pas réussi aussi bien. Ce que je fais mal?
var store = new X509Store(StoreLocation.CurrentUser); //StoreLocation.LocalMachine fails too
var certificates = store.Certificates;
foreach (var certificate in certificates)
{
var friendlyName = certificate.FriendlyName;
Console.WriteLine(friendlyName);
}
//original problem: fetch a single certificate by its subject name
X509Certificate2 clientCertificate = CertificateUtility.GetCertificate(StoreName.My, StoreLocation.CurrentUser, "CN=mypc.domainname"); //returns null :(
- Je peux le faire fonctionner localement, lorsque je publie et que le client accède au système, il ne peut pas trouver les certificats. Est-il possible de trouver les certificats sur le client, avec l'application sur le serveur?
Vous devez vous connecter pour publier un commentaire.
Ajouter cette ligne de code à la deuxième ligne et de voir comment il fonctionne:
et puis cela au bas :):
OpenFlags.ReadOnly
est 0, en précisant à côté des autres drapeaux n'a pas d'effet spécifique. Il sera considéré comme étant en lecture seule, tant que vous ne donnez pas l'OpenFlags.ReadWrite
(valeur 1) drapeau.OpenFlags.ReadOnly
est vraiment juste une valeur par défaut pour donner parce que la fonction nécessite un paramètre. Sa description n'est même pas correct techniquement, puisque, comme je l'ai dit, c'est pas un vrai drapeau; il ne contient pas un peu de changement.using
bloc depuisX509Store
implémenteIDisposable
😉IDisposable
interface est uniquement pris en charge par leX509Store
classe depuis .NET Framework 4.6. Avant que vous avez eu l'envelopper dans untry-finally
bloc.Tout en un ...
J'ai un serveur apache (xamp) avec le protocole https. J'ai accès via https et c# (vs2010)
pour un PHP page de téléchargement
Installer le certificat de l'i.e dans le dossier personnel de certificat, par exemple.
Pour afficher les certicats run "certmgr.msc" , au moins dans win7
Liste les certificats personnels
Trouver certificat spécifique
Je peux trouver des certificats par ...
certificateCollection aura les certificats-je me soucier de ... si c'est juste un puis-je obtenir le premier élément de la collection.
Regarder dans votre magasin de certificats(mmc/ajouter/supprimer un composant logiciel enfichable dans/mon compte utilisateur/Certificats - Utilisateur Actuel/Personnels/Certificats) pour voir le nom du sujet pour s'assurer "CN=mypc.domainname" est quoi en fait sur le cert.
vs
...etc