2010-10-02 4 views
0

Mon site Web envoie des messages http à un autre serveur et je dois joindre un certificat.Certificats .NET (C#)

J'utilise ce code pour ouvrir le magasin de certificats et d'obtenir le certificat que j'ai besoin:

X509Store store = new X509Store(StoreName.My, StoreLocation.CurrentUser); 
store.Open(OpenFlags.ReadOnly); 
X509CertificateCollection certCollection = store.Certificates; 

L'utilisateur est un compte de domaine et le pool d'applications pour l'application utilise. Le problème est que je reçois seulement le certificat si ce compte est connecté dans la machine. Si l'utilisateur est déconnecté, je ne peux pas accéder à ce magasin.

Des idées?

Merci!

Répondre

3

Vous devez déplacer le certificat du stockage de certificats CurrentUser vers le stockage LocalMachine (par exemple, à l'aide de la console MMC Certificats), puis modifier les paramètres de votre constructeur X509Store de StoreLocation.CurrentUser à StoreLocation.LocalMachine.

Une autre option consiste à stocker le certificat dans le fichier PFX et à le charger à partir de là, mais vous devez prendre soin de la sécurité du mot de passe utilisé lors du chargement du fichier PFX à partir du disque.

Questions connexes