此特定声明身份验证的环境恰好是SharePoint。 SharePoint有自己的http模块,可以强制执行声明身份验证。未经身份验证的访问将为基于声明的身份验证(例如Ntlm和表单)生成一组选项。
WCF服务客户端显然不知道如何处理403消息SharePoint返回。理想情况下,它会针对URL“/ _windows”执行Ntlm auth序列,这将产生401质询,然后将生成的联合cookie传递给WCF服务。
这不是处理基于多个身份验证选项的索赔服务的最佳实践方式,但我无法在这个主题上挖掘任何好的资源。 basicHttpBinding是徒劳的吗?我现在有什么选择?
答案 0 :(得分:0)
如果您使用带有sharepoint的声明,则应使用Windows Identity Foundation(WIF)。请参阅:http://www.microsoftpdc.com/2009/SVC26
答案 1 :(得分:0)
在这种情况下你应该使用Kerberos和ws2007FederationHttpBinding绑定。