美好的一天
我有以下问题:如何在用户使用服务之前更改web.config以请求凭据?
提前致谢
答案 0 :(得分:3)
您必须为您的目的执行基本身份验证,并禁用IIS中的所有身份验证(托管wcf的位置),但基本身份验证除外
默认启用匿名身份验证,这就是您访问服务时不会询问的原因。
您还需要按照以下
进行web.config设置<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="myHttpGetBinding">
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Basic"/>
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="yourserviceaddress"
binding="basicHttpBinding"
bindingConfiguration="myHttpGetBinding"
contract="BasicAuthTest.MyServiceContract"
name="myBasicEndpoint"/>
</client>
</system.serviceModel>
请参阅以下链接
http://www.codeproject.com/KB/WCF/WCFBasicHttpBinding.aspx
答案 1 :(得分:1)
由于您的服务是在IIS中托管的,因此您应该查看this link中提供的指南,特别是有关身份验证的部分。
我相信除非您在IIS中启用了Windows身份验证,这将自动提示用户,否则您的应用程序将负责收集用户的凭据。