Erreur IIS 7 " une session d'ouverture de session spécifiée n'existe pas. Il peut déjà avoir été résilié."lorsque vous utilisez https

J'essaie de créer L'authentification des certificats clients pour mon asp.net site web.

Pour créer des certificats clients, je dois d'abord créer une autorité de certification:

Makecert.exe-r - n "CN = mon CA personnel" - pe-sv MyPersonalCA.pvk -un sha1-len 2048 - B 01/01/2013-e 01/01/2023-CY autorité MyPersonalCA.cer

Ensuite, je dois l'importer dans IIS 7, mais comme il accepte le .format pfx, je le convertit en premier

pvk2pfx.exe -pvk MyPersonalCA.pvk -spc MyPersonalCA.cer -pfx MyPersonalCA.pfx

Après l'importation MyPersonalCA.pfx, j'essaie d'ajouter la liaison de site https à mon Site Web et de choisir ce qui précède comme certificat SSL, mais j'obtiens l'erreur suivante:

entrez la description de l'image ici

Des suggestions?

50
demandé sur enb081 2013-02-19 12:41:04

14 réponses

J'ai rencontré ce même problème, mais je l'ai corrigé d'une manière différente. Je crois que le compte que j'utilisais a changé depuis le moment où j'ai initialement tenté de configurer le certificat jusqu'au moment où je suis revenu pour terminer le travail, créant ainsi le problème. Quel est le problème, Je ne sais pas, mais je soupçonne que cela a à voir avec une sorte de hachage de l'utilisateur actuel et qui est incohérent dans certains scénarios car l'utilisateur est modifié ou recréé, etc.

Pour le réparer, j'ai arraché à la fois IIS et le Certificats snap-in (pour L'utilisateur actuel et L'ordinateur Local) toutes les références du certificat en question:

Certificats IIS

mmc.exe - > Ajouter / Supprimer des snap-ins, choisissez certificats puis ordinateur local ou utilisateur actuel

Ensuite, j'ai importé le *.fichier pfx dans le composant logiciel enfichable certs dans MMC, En le plaçant dans L'ordinateur Local\personal node:

  1. cliquez avec le bouton droit sur le nœud certificats sous personnel (sous Ordinateur Local en tant que racine)
  2. Toutes Les Tâches - > Importer
  3. passez par L'Assistant pour importer votre *.pfx

À partir de ce moment, j'ai pu pour revenir à IIS et le trouver dans les certificats du serveur. Enfin, je suis allé sur mon site, édité les liaisons et sélectionné le bon certificat. Cela a fonctionné parce que l'utilisateur était cohérent tout au long du processus.

Au point mentionné dans une autre réponse, vous ne devriez pas avoir à le marquer comme exportable car c'est un problème de sécurité majeur. Vous permettez effectivement à quiconque peut accéder à la boîte avec un ensemble similaire d'autorisations de prendre votre cert avec eux et d'importer nulle part ailleurs. Évidemment, ce n'est pas optimal.

58
répondu Mike L 2014-09-15 18:54:52

Avertissement de sécurité : ce que la case à cocher signifie vraiment, c'est que le certificat peut être lu par des utilisateurs qui ne devraient pas être en mesure de le lire. Tels que l'utilisateur exécutant le processus de travail IIS. En production, utilisez plutôt autre réponse .

M'est arrivé aussi, et a été corrigé en veillant à ce que "autoriser l'exportation de ce certificat" soit vérifié lorsque vous l'importez:

                                            entrez la description de l'image ici

(merci à ce post !)

47
répondu Roman Starkov 2017-05-23 12:26:10

Cela doit être une sorte de bug IIS, mais j'ai trouvé la solution.

1-Exporter MyPersonalCA.pfx de IIS.

2-Convertissez-le en .pem :

openssl pkcs12 -in MyPersonalCA.pfx -out MyPersonalCA.pem -nodes

3-convertissez-le en .pfx :

openssl pkcs12 -export -in MyPersonalCA.pem -inkey MyPersonalCA.pem -out MyPersonalCA.pfx

4-réimportez-le dans IIS .

10
répondu enb081 2013-02-19 11:04:14

Personne ne s'en soucie probablement plus, mais je viens de faire face à ce problème avec ma liaison de site Web IIS 7. La façon dont je l'ai corrigé allait à l'Autorité de certification et trouver le certificat émis au serveur avec le problème. J'ai vérifié le compte d'utilisateur qui a demandé le certificat. Je me suis ensuite connecté au serveur IIS en utilisant RDP avec ce compte. J'ai pu relier le protocole https en utilisant ce compte uniquement. Aucune exportation, réédition, ou extension changer hacks ont été nécessaires.

7
répondu SkankyMidget 2013-12-26 14:21:47

Dans notre cas, ce problème s'est produit parce que nous avons installé le certificat dans une Machine virtuelle et en avons fait une image pour une utilisation ultérieure.

Lors de la création d'une autre machine virtuelle à partir de l'image précédemment créée, le certificat envoie le message.

Pour éviter cela, assurez-vous d'installer le certificat sur chaque nouvelle machine virtuelle.

5
répondu Paulo Dinis 2013-11-07 13:45:36

Nous avons eu le même problème en raison de l'importation incorrecte du certificat dans le magasin de certificats personnels de L'utilisateur actuel. Le retrait du magasin personnel de L'utilisateur actuel et l'importation dans le magasin de certificats personnels de la Machine locale ont résolu le problème.

4
répondu steve-warren 2015-08-17 15:42:40

J'ai eu cette erreur en raison d'une mauvaise ligne de commande openssl lors de l'exportation du certificat PKCS #12. - la clé de certfile était fausse. J'ai exporté à nouveau le certificat et il a été importé avec succès.

2
répondu Der_Meister 2014-01-20 12:45:21

J'ai eu le même problème. Résolu en supprimant le certificat de de Personal store (quelqu'un y a mis) et de l'hébergement web. Tout est fait par le Gestionnaire IIS. Ensuite, j'ai ajouté à nouveau au magasin d'hébergement web (avec tout vérifié) et je peux utiliser HTTPS à nouveau...

2
répondu Edgar 2015-06-10 07:36:16

Dans mon cas, c'était parce que L'utilisateur du service de publication mondial n'avait pas les autorisations sur le certificat. Après avoir installé le certificat, accédez au module certificats dans MMC et cliquez avec le bouton droit sur le certificat avec le problème. Sélectionnez " Gérer Les Clés Privées..."dans le menu" Toutes les tâches " et ajoutez l'utilisateur ci-dessus. C'était l'utilisateur du système dans mon cas.

0
répondu user2034250 2015-09-02 11:00:22

J'ai réussi à résoudre ce problème en important le fichier SSL certificate PFX à l'aide du Gestionnaire de certificats Windows.

Http://windows.microsoft.com/en-us/windows-vista/view-or-manage-your-certificates

0
répondu jorel 2015-09-22 06:18:53

Je viens d'avoir ce problème aujourd'hui et je me sens obligé de poster ma solution dans l'espoir que vous perdrez moins de cheveux que je viens de le faire.

Après avoir essayé les solutions ci-dessus, nous avons dû réémettre le certificat SSL du fournisseur SSL (RapidSSL émettant en tant que revendeur pour GeoTrust).

Il n'y avait aucun coût avec ce processus, juste l'attente de cinq minutes pendant que les e-mails de confirmation (admin@) sont arrivés, et nous avons obtenu l'accès à nouveau.

Une fois que nous avons eu la réponse, nous avons utilisé IIS > Certificats de serveur pour l'installer. Nous n'avions pas besoin du composant logiciel enfichable MMC.

Https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&id=SO5757

Nous avons gardé une fenêtre de bureau à distance pour le serveur ouvert tout au long, pour éviter tout problème avec différents comptes de connexion/sessions, etc. Je crois que c'est un bug IIS comme le croit un autre expert, car nous n'avons qu'un seul compte RDC. Ce qui est le plus exaspérant, c'est que le même certificat a fonctionné parfaitement pendant deux mois avant de se "casser".

0
répondu EvilDr 2016-03-29 09:42:10

Au lieu d'importer le certificat depuis IIS, faites-le depuis MMC. Puis goto IIS pour la liaison.

0
répondu Kuldeep Heggana 2016-06-07 09:26:00

Dans mon cas, j'ai importé une version plus récente d'un certificat (PFX pour IIS) de StartSSL tout récemment et j'ai oublié de supprimer l'ancienne, ce qui a causé cette erreur (maintenant deux certificats identiques). J'ai enlevé les deux, importé le bon, et maintenant ça marche.

0
répondu James Wilkins 2016-09-10 19:07:44

Je recevais une erreur en essayant de lier le cert localhost pfx pour ma machine de développement. Avant d'essayer tout cela ci-dessus, j'ai d'abord essayé quelque chose de plus simple.

  1. fermé tout site de développement localhost que j'avais ouvert.
  2. arrêté mon serveur IIS et fermé le gestionnaire
  3. Exécutez le gestionnaire en tant Qu'administrateur
  4. Ajouté toutes mes liaisons https, aucune erreur ou problème cette fois.
  5. IIS redémarré

Tout semble fonctionner après cela.

0
répondu Yogurt The Wise 2017-05-04 20:52:20