一个基于Silverlight的intranet应用,需要启用Windows集成验证,设置如下:
1. IIS (7.5) - 启用Windows Authentication
2. web.config:
<authentication mode="Windows" />
<identity impersonate="true"/>
<authorization>
<deny users="?"/>
</authorization>
以上配置,ASP.NET部分的集成验证可工作。Silverlight调用WCF会遇到异常,还需:
1. 配置Silverlight WCF custom binding httpTransport:
<binding name="mybinding" closeTimeout="00:05:00" openTimeout="00:05:00" receiveTimeout="00:05:00" sendTimeout="00:05:00"> <binaryMessageEncoding /> <httpTransport authenticationScheme="Negotiate" /> <!-- required by Windows Auth. Use "Negotiate" on Windows 2008/ Windows 7--> </binding>
MSDN文档严重有误,还好下面的评论给出了正解
2.配置WCF endpoint: 去掉mex endpoint
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。