Impossible de créer un canal sécurisé SSL / TLS - Le problème pourrait-il être un serveur proxy?

StackOverflow https://stackoverflow.com/questions/1600743

  •  05-07-2019
  •  | 
  •  

Question

J'ai une application c # qui appelle une méthode de service Web qui s'authentifie à l'aide d'un certificat. Le code fonctionne car, lorsqu'il est installé sur le serveur A (sans proxy), il s'authentifie.

Lorsque j'installe le code sur le serveur B, sur le site client, il est installé derrière un proxy. J'ai vraiment essayé presque tout, mais je continue à avoir cette erreur:

Impossible de créer un canal sécurisé SSL / TLS

Pensez-vous que ce problème peut être causé par un serveur proxy? Si vous avez eu une expérience personnelle avec cela s'il vous plaît partager.

Merci

Était-ce utile?

La solution

D'après mon expérience, presque tous ces messages sont dus à une machine de la chaîne (client, proxy, serveur) qui n'est pas "aimer". un certificat pour une raison quelconque.

Pour préciser ce que twk a dit, si vous utilisez des certificats auto-signés, ou votre propre autorité de certification, vous devez installer le certificat de signature dans au moins le magasin d'autorités de confiance sur le serveur, et éventuellement sur le proxy. / p>

Problèmes courants rencontrés:

  • Le certificat sur le serveur n'est pas signé par une autorité approuvée par le PROXY ou le CLIENT
  • Le certificat sur le client n'est pas signé par une autorité approuvée par le mandataire ou le serveur
  • Oups, j'ai oublié d'exporter la clé privée lorsque j'ai créé le certificat à installer sur le client
  • Mon processus ne dispose pas des autorisations de lecture sur la clé privée du client
  • Le certificat client est protégé par un mot de passe et je n'ai pas spécifié d'informations d'identification lors de la lecture du certificat.

Autres conseils

J'avais le même problème. Dans mon cas, les certificats nécessitent l’accès au service réseau. Vous pouvez vérifier par

  1. Ouvrir le certificat MMC
  2. Accédez à Certificats (ordinateur local) > Personnel > Certificats
  3. Cliquez avec le bouton droit sur votre certificat et sélectionnez Toutes les tâches > Gérer les clés privées… dans le menu contextuel
  4. Définissez l'autorisation appropriée

Si votre certificat n'est pas approuvé (est auto-signé), le client C # refusera de se connecter.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top