不支持身份验证方案“NTLM”,并且其他问题从.asmx迁移到wcf

时间:2010-12-01 17:02:31

标签: c# wcf

我刚刚将.asmx Web服务切换到WCF(都在.NET 3.5中),现在我正在

The authentication scheme ' NTLM' is not supported. 

我在google上看到的唯一一件事就是某些w3svc / NTAuthenticationProviders设置有NTML而不是NTLM。我没有这个问题。

1 个答案:

答案 0 :(得分:3)

好的 - 这里是我在迁移过程中遇到的一些烦人的WCF问题的摘要,希望它可以帮助某人。

问题1 - “此集合已包含一个带有方案http的地址。此集合中每个方案最多只能有一个地址。”

这是由我的网络服务器引起的,该网络服务器有多个带有多个主机标头的网站。解决方案:WCF service startup error "This collection already contains an address with scheme http"

我刚添加了baseAddressPrefixFilter:

<serviceHostingEnvironment>
    <baseAddressPrefixFilters>
        <add prefix="http://yoururl.blahblah.com/" />
    </baseAddressPrefixFilters>
</serviceHostingEnvironment>

问题2:我遇到The authentication scheme ' NTLM' is not supported.错误。我挣扎了一段时间,但最终重新启动让一个人消失了(虽然我也这样做了(http://bytes.com/topic/net/answers/705912-authentication-scheme-ntml-not-supported):

# change directory to c:\inetpub\admin scripts first
cscript adsutil.vbs set w3svc/NTAuthenticationProviders "Negotiate,NTLM"

我的配置中的第一个逗号后面有一个空格,不知道是否会导致问题。

问题3:重新启动后,我很开心.404错误。

我对此的第一个猜测是,wcf未设置为托管在我的服务器上,因此我运行: (http://msdn.microsoft.com/en-us/library/ms732012.aspx

serviceModelReg.exe -i

但404的真正来源是由于我试图转到http://yoururl/somewhere.svc而不是http://yoururl.blahblah.com/somewhere.svc(即我的baseAddressPrefixFilter导致我的404)。

希望这有帮助!