我正在使用RESTful WCF服务向客户端提供数据。托管服务的应用程序需要在服务器上集成Windows身份验证,因此在Cassini中进行本地测试非常困难。我为我的服务使用以下行为配置,这在部署到启用了集成安全性的IIS时效果很好。
<webHttpBinding>
<binding name="InstaCheckServiceWebHttpBinding">
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Windows" />
</security>
</binding>
</webHttpBinding>
但是使用此配置时,当我尝试在Visual Studio中进行本地调试时尝试调用Web服务时,应用程序会抛出以下错误。
此服务的安全设置需要“Windows”身份验证,但未为承载此服务的IIS应用程序启用
使用Visual Studio的内置Web服务器时,是否有办法包含集成的Windows身份验证,或者针对此问题采取其他解决方法?
谢谢!
答案 0 :(得分:4)
将项目更改为使用IIS而不是Cassini。
右键单击您的项目并选择 属性然后是Web选项卡。
选择“使用本地IIS Web服务器” 单击“创建虚拟目录” 用于安装Visual Studio的按钮 IIS中的网站为您服务。
转到IIS MMC管理单元并进行配置 适当的Windows设置 认证
现在当你运行项目时,它将使用IIS而不是Cassini。
答案 1 :(得分:1)
类似问题here
TLDR版本:如果您想调试安全设置,我认为Cassini不适合WCF