Erreur SSL avec le service WCF lors de l'utilisation de Transport Security & amp; Cert. Authentification

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

  •  07-07-2019
  •  | 
  •  

Question

Je ne sais pas s'il s'agit d'une question qui convient mieux à Serverfault.com, cela dépend vraiment de la réponse, mais j'ai suivi ce tutoriel en .NET C # pour configurer un service WCF sous 'wsHttpBinding' (sécurité du transport et authentification par certificat), j'ai créé un certificat de développement de test à l'aide des méthodes décrit ici et j'ai également configuré mon port HTTPS 443 dans Bindings for IIS.

Tout a bien fonctionné à chaque étape, mais je reçois une erreur dans l'exemple "Hello World". service que j'ai créé (à nouveau, tous suivis via le lien du didacticiel MSDN que j'ai d'abord déclaré) lorsque vous cliquez sur https: //vd1/WcfWsHttpBindingTest/Service.svc (VD1 étant le nom de mon ordinateur local):

HTTP Error 403.7 - Forbidden
The page you are attempting to access requires your browser to have a Secure Sockets Layer (SSL) client certificate that the Web server recognizes.

J'ai suivi les deux tutoriels indiqués pour installer mon certificat de serveur et le certificat client et qu'il a été configuré dans IIS; De plus, si je nie le 'https' et n'utilise que 'http', je reçois un message 403.4 Interdit indiquant que j'essaie d'accéder à une page sécurisée avec SSL. Je suis donc presque sûr que ce côté-là fonctionne.

Avez-vous des idées?
Je n'ai pas dévié des didacticiels, j'utilise IIS 7.0 et Vista Business.

Cela aiderait même si quelqu'un pouvait me lancer dans l'ombre en me donnant de meilleurs liens de tutoriel pour la configuration d'un service avec wsHttpBinding.

** Si quelqu'un avait vu mon message initial, vous remarquerez que j'ai fermé ma réponse car elle a évolué vers le problème ci-dessus **

Était-ce utile?

La solution

Merci pour votre aide Tanner.

Après deux heures passées à me gratter la tête et à bricoler, avec l'aide d'un collègue, nous l'avons réduite à une étape qui n'a pas été effectuée correctement. Le certificat a été ajouté à " Utilisateur local " pas "Ordinateur local".

Merci encore.

Autres conseils

On dirait que les informations d'identification du client ne sont pas définies ou qu'il y a un problème avec les fichiers de configuration. Pouvez-vous publier les fichiers de configuration afin que nous puissions voir la configuration ClientCredentials, qui se configure dans une balise du type: < clientCertificate > .

Alternativement, un certificat peut être configuré en code. Si vous avez le code source qui le configure sur le proxy, publiez-le.

Une vérification finale serait spécifique à Vista. Vous devez exécuter VS (et éventuellement les processus associés pour la génération de certificat) en tant qu'administrateur: Quelques informations sur l'administrateur Vista

Si rien de tout cela ne vous aide, essayez de CodePlex , les listes de contrôle relatives à la sécurité. la configuration m'a aidé sans fin.

Si vous êtes invité à entrer un mot de passe administrateur ou à confirmer une confirmation, tapez votre mot de passe ou cliquez sur Continuer. 2. Dans le gestionnaire IIS, localisez l'application Web pour laquelle vous souhaitez modifier le paramètre SSL. 3.Dans la vue des fonctionnalités, double-cliquez sur Paramètres SSL. 4.Sur la page Paramètres SSL, sélectionnez l'option Accepter sous
. Certificats clients. 5.Dans le volet Actions, cliquez sur Appliquer

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