2009-12-14 5 views
2

Auparavant, j'essayais d'utiliser le certificat client sur .NET CF 2.0 (voir here) et j'ai finalement dû abandonner. Je suis maintenant sur .NET CF 3.5 qui a le support de la propriété ClientCertificates sur l'objet HttpWebRequest. Cependant, je n'arrive pas à comprendre comment instancier l'objet X509Certificate ou X509Certificate2 avec un fichier pfx. Sur le cadre complet, je peux simplement faire quelque chose comme new X509Certificate2(filename, password). Si j'essaie de créer l'objet avec des octets lus à partir d'un fichier .pfx, j'obtiens une exception disant ".NET CF 3.5 ne supporte pas les fichiers pfx". Alors, comment puis-je spécifier un certificat client avec une clé privée à utiliser avec la propriété ClientCertificates?Spécifier les certificats clients dans HttpWebRequest dans .NET Compact Framework 3.5

Répondre

1

Selon MDSN il n'y a que deux contructeurs disponibles/pris en charge par le cadre compact:

http://msdn.microsoft.com/en-us/library/system.security.cryptography.x509certificates.x509certificate2.x509certificate2.aspx

Les FC .NET pris en charge les constructeurs ont une petite icône de l'appareil à côté d'eux dans la première colonne.

Ce sont:

X509Certificate2(array<Byte>[]()[]) 

http://msdn.microsoft.com/en-us/library/ms148413.aspx

X509Certificate2(IntPtr) 

http://msdn.microsoft.com/en-us/library/ms148414.aspx

+0

Oui, je remarquai que. Ce que je ne comprends pas est comment puis-je spécifier un certificat client à utiliser avec l'authentification du client SSL lorsque l'objet X509Certificate de la structure compacte ne prend pas en charge une clé privée? Je crois comprendre que la clé privée est utilisée pour authentifier le client auprès du serveur afin que le serveur puisse faire confiance au client. Je ne vois aucun moyen de faire cela sur le framework compact malgré que Microsoft ait ajouté la propriété ClientCertificates dans 3.5 ... – Jason

+0

Je pense que la façon de faire est d'utiliser la classe X509Store pour accéder aux certificats dans le magasin de certificats local, puis utilisez ces certificats - plutôt que d'en charger un à partir d'un fichier. –

+0

Ok, intéressant ... Comment ajouter un certificat au magasin avec la clé privée associée? – Jason

Questions connexes