为了账号安全,请及时绑定邮箱和手机立即绑定

WCF与IIS集成Windows身份验证的矛盾

标签:
资讯

好久没有上来了,最近跟着原来的老大一起跳到了一家新公司,在做一个新的交友项目,今天总算基本完成了。分享一个关于WCF的小技巧,由于项目中

很多地方用了Jquery+WCF来实现Ajax异步获取数据,在开发环境下:

直接在vs.net里,右击svc文件在浏览器里浏览时(没有采用vs.net自带的aspx服务器,而是在项目属性里设置为直接使用IIS),提示以下错误:

IIS 指定了身份验证方案“IntegratedWindowsAuthentication, Anonymous”,但绑定仅支持一种身份验证的规范。有效的身份验证方案为摘要、协商、NTLM、基本或匿名。请更改 IIS 设置,以便仅使用单一的身份验证方案。


错误提示说得很明白:IIS要么采用集成验证,要么仅使用匿名验证,于是把IIS设置里的集成验证勾选去掉了,IIS重启后,这回运行正常了,但是VS.Net却无法断点调试了(启用调试必须采用集成验证),难道这就是传说中的“鱼与熊掌不可兼得”???

不甘心之下,在iis的website站点中,对svc所在的目录右击看了一下,呵呵,找到解决办法了,IIS可以允许单独对每个目录(或虚拟目录)设置目录安全性,于是把svc所在的目录(整个项目中的所有wcf文件都集中放在这个目录中)--》目录安全性-->去掉了集成验证前的勾选框,而整个站点仍然采用集成验证,这下svc可以直接浏览,而我们傻乎乎的vs.net也能断点调试了……

 

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 1
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消