WCF Exception: ...service "Anonyme" de l'Authentification, mais il n'est pas activé pour l'application IIS qui héberge ce service
J'ai vu cette demande d'ici et de partout, des tas de fois, mais je ne peux pas obtenir ma tête autour de lui.
Voici ce que je veux faire. J'ai besoin d'héberger un Service WCF dans IIS 6. Je veux le nom d'utilisateur /mot de passe de sécurité et je ne veux pas de ces passés non crypté, donc je suis en utilisant le protocole HTTPS. J'ai ce travail tout en local sur mon IIS, mais quand je viens de le déployer-je obtenir l'accès anonyme n'est pas activée erreur. Sur mon serveur IIS local l'accès anonyme est activé sur le serveur déployé il n'est pas, et nous ne voulons pas de l'activer. Problème comprise. La Solution n'est pas évidente pour moi....
Si j'accédez à la page dans IE, ou faire ajouter une référence de service à partir de Visual Studio, j'ai cette erreur après avoir entré mon nom d'utilisateur /mot de passe. Donc, cela montre que mon certificat et HTTPS fonctionne OK, et le nom d'utilisateur et mot de passe sont corrects. Voici les paramètres à partir du web.config:
<services>
<service name="SecureWcfTestsApplication.Service1">
<endpoint address=""
binding="wsHttpBinding"
bindingConfiguration ="Binding2"
contract="SecureWcfTestsApplication.IService1" />
</service>
</services>
<bindings>
<basicHttpBinding>
</basicHttpBinding>
<wsHttpBinding>
<binding name="Binding2">
<security mode="TransportWithMessageCredential">
<message clientCredentialType="Windows" algorithmSuite="Default" />
</security>
</binding>
</wsHttpBinding>
</bindings>
Je suis en utilisant wsHttpBinding parce qu'il n'aimait pas basicHttpBinding avec clientCredentialType Windows. Cela dit, je préfère utiliser basicHttp mais il veut UserName comme le clientCredentialType, et je ne suis pas sûr quelle est la différence entre le nom d'utilisateur et de sécurité de Windows.
Meilleur
Ray
OriginalL'auteur RBrowning99 | 2012-03-16
Vous devez vous connecter pour publier un commentaire.
L'exception que vous obtenez est normal si vous n'avez pas à configurer la sécurité du transport à l'aide de l'authentification Windows, http://msdn.microsoft.com/en-us/library/ms733089.aspx
<transport>
balise est nécessaire dans ce cas, si vous avez déjà<message>
balise définie.Dans le cas où quelqu'un vient à plus tard la façon la plus simple que j'ai trouvé pour le faire.<> <service de nom="SecureWcfTestsApplication.Service1"> <endpoint address="" liaison="basicHttpBinding" bindingConfiguration ="Binding2" contrat="SecureWcfTestsApplication.IService1" /> </service> </services> <liaisons> <basicHttpBinding> <binding name="Binding2"> <mode de sécurité="Transport"> <transport clientCredentialType="Windows" /> </titre> </liaison> </basicHttpBinding> </fixations>
OriginalL'auteur Lex Li
Dans le Gestionnaire des services IIS, cliquez sur votre site. Vous avez besoin d'être "en vue" (plutôt que "d'affichage de contenu")
Dans la section IIS de "vue" choisir le soi-disant fonction "authentification" et doulbe cliquez sur. Ici, vous pouvez activer l'Authentification Windows. C'est aussi possible (je pense que dans l'une des suggestions dans le thread) par un paramètre dans le web.config ( ...)
Mais peut-être que vous avez un site web.config vous ne voulez pas scrue trop de monde avec. Puis ce fil ne sera pas trop de l'aide, c'est pourquoi j'ai ajouté cette réponse
OriginalL'auteur
L'authentification anonyme peuvent, et dans certains cas doit être activé pour le service, mais pas pour le site.
Vérifiez donc que votre site est "root" l'authentification a uniquement l'Authentification Windows est activé. Ensuite, développez votre site, sélectionnez "service" dossier et assurez-vous que votre service a Windows et l'Authentification Anonyme est activée.
J'ai eu au moins identiques message d'erreur avec MSSQL base de Données Master data Services site web & service et c'était la solution. J'ai fait l'erreur lors de l'exécution seulement le service, mais le site a fonctionné presque ok, DMS Explorer ne fonctionne pas parce que le service de l'paramètres d'authentification ont été mauvais au premier abord. La Cause de cette miss-configuration peut-être un bug dans les SMD Gestionnaire de Configuration lors de la création de nouveaux MDS site?
Donc, dans mon cas, le problème était de ne pas être résolu en faisant une édition spéciale pour le web.config ni la ApplicationHost.les fichiers de configuration, mais juste choisir la bonne paramètres d'authentification du site web et du service dans le gestionnaire des services IIS. Je ne suis pas sûr que ce soit le cas ici, mais peut-être la peine d'essayer?
OriginalL'auteur Atte
Particulièrement stupide moment, j'avais aussi cette erreur:
WCF Exception: ...service "Anonyme" de l'Authentification, mais il n'est pas activé pour l'application IIS qui héberge ce service
J'ai finalement réalisé que mon web.config n'a pas eu une "authentification" dans la balise "du système.web". Pas étonnant IIS a été se plaindre des problèmes d'authentification !
La résolution de la question est aussi simple que d'ajouter:
Stupide, je sais... mais j'espère que cela aide !
OriginalL'auteur Mike Gledhill