2009-07-24 6 views
0

En C# je charge les objets X509Certificate2 d'un X509Store initialisé comme ceci:X509Certificate2: Les extensions sont manquantes

 X509Store store = new X509Store("My", StoreLocation.LocalMachine); 
     store.Open(OpenFlags.OpenExistingOnly | OpenFlags.ReadOnly); 

J'ai fait mon certificat dans OpenSSL et il est réglé sur « Tout objet ». Donc je m'attendrais à ce que le X509Certificate2.Extensions soit non vide et détienne l'extension "Server Auth". Toutefois, Extensions est toujours une liste vide. Des idées?

Répondre

2

Je revérifierais le certificat dans une source indépendante, juste pour vérifier que les données que vous pensez y sont vraiment présentes. Je l'habitude d'utiliser l'un des outils basés sur le Web:

http://www.redkestrel.co.uk/cgi/decodeCert.pl

http://www.bogpeople.com/networking/CertDecoder/

sont deux de ces outils. De cette façon, vous savez s'il s'agit des données de test ou de l'utilisation de la bibliothèque X509.

Ensuite, je ne suis pas sûr de savoir ce que vous voulez dire par «tout usage». J'ai parcouru la documentation Open SSL, et je ne vois pas de paramètre pour ce que vous décrivez. Il existe deux extensions dans un certificat qui définissent les utilisations d'une clé: Utilisation des clés et Utilisation étendue des clés. Et la description des commandes Open SSL et du fichier de configuration n'a pas montré d'endroit où vous pouviez définir "any" et tous ces paramètres sont activés. Ce que je pense que vous voulez est la valeur « serverauth » sur l'extension de l'utilisation avancée de la clé:

http://www.openssl.org/docs/apps/x509v3_config.html#Extended_Key_Usage_

Si vous êtes prêt à poster la commande OpenSSL spécifique utilisée et le fichier de configuration pour la génération de certificats, je pourrais probablement être plus d'aide.

+0

Merci pour l'info .. Je vais essayer de régler le contenu directement dans mon contenu OpenSSL. Quand j'ai dit qu'il était réglé sur "n'importe quel but" je faisais référence au gestionnaire de certificats MMC snapin dans Windows. Si vous examinez les propriétés du certificat pour le certificat installé, l'option "Activer tous les objets pour ce certificat" est cochée dans l'onglet Général. Mais je suppose que cela signifie quelque chose d'autre ou est juste au hasard Microsoft bamboozlement. – evilfred

Questions connexes