Question

J'ai un certificat de serveur qui fonctionne avec mon service WCF.

Cependant, lorsque j'exécute le service Web, il semble que je rencontre un problème d'autorisations.

[ArgumentException: le certificat 'CN = S80' doit avoir une clé privée capable d’échanger des clés. Le processus doit disposer de droits d'accès pour la clé privée.]

Une idée?

Était-ce utile?

La solution

En supposant que vous disposiez de la paire de clés publique / privée complète pour laquelle vous n'avez pas accordé l'accès à la clé privée du certificat au processus sous lequel votre service WCF est exécuté.

Maintenant, la procédure dépend de la version de votre système d'exploitation et de la manière dont vous hébergez le service, mais cet article fournit des instructions qui devraient fonctionner pour XP et Windows 2003.

Pour Windows 2008 / Vista / Win7, le processus est légèrement plus facile. Démarrez MMC et ajoutez le composant logiciel enfichable Certificat en sélectionnant le bon propriétaire de conteneur pour votre certificat SSL. Recherchez le certificat (probablement dans le magasin personnel), cliquez dessus avec le bouton droit de la souris et choisissez Toutes les tâches > Gérer la clé privée. Accordez un accès en lecture à la clé privée à l'utilisateur hébergeant votre service.

Autres conseils

winhttpcertcfg -g -c LOCAL_MACHINE\MY -s mycert -a "Network Service"
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top