我看到这里到处这个问很多次,但我不能左右我的头的IIS应用程序启用它。WCF异常:...这个服务需要“匿名”身份验证,但它没有为承载此服务
这是我想要做的。我需要在IIS 6中托管WCF服务。我希望用户名/密码安全,并且我不希望这些传递未加密,所以我使用的是HTTPS。我在我的IIS上本地工作,但是当我部署它时,我得到匿名访问未启用错误。在我的本地IIS上启用了匿名访问,在部署的服务器上它不是,我们不想启用它。问题理解。解决方法不是明显对我....
如果我浏览网页的IE,还是从Visual Studio中添加服务引用,我得输入我的用户名/密码后,这个错误。所以这表明我的证书和HTTPS工作正常,并且用户名和密码是正确的。下面是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>
我使用的wsHttpBinding,因为它不喜欢与clientCredentialType设置为Windows basicHttpBinding的。话虽如此,我宁愿使用basicHttp,但它希望UserName作为clientCredentialType,我不确定UserName和Windows安全性之间有什么不同。
最佳
雷
嗨 - 我加了这一点,仍然得到同样的错误 - 我现在有这样的: basicHttpBinding的> <的wsHttpBinding > <绑定名称= “Binding2”> <安全模式= “TransportWithMessageCredential”> <消息clientCredentialType = “视窗” algorithmSuite = “默认”/> <传输clientCredentialType = “视窗”/> –
RBrowning99
2012-03-20 17:13:08
在任何情况下e后来发现这是我发现的最简单的方法。 <服务名称= “SecureWcfTestsApplication.Service1”> <端点地址= “” 结合= “basicHttpBinding的” bindingConfiguration = “Binding2” 合同= “SecureWcfTestsApplication.IService1”/> <绑定名称= “Binding2”> <安全模式= “运输”> <传输clientCredentialType = “视窗”/> basicHttpBinding的> –
RBrowning99
2012-03-21 03:51:00