2009-10-15 63 views
0

这比我在SO关于这个问题的发现其他问题有点不同......的安全令牌请求不能被满足,因为身份验证失败

我们正在运行的2个网站,一个WCF服务另一个是服务的客户端。每当我们尝试访问服务时,我们都会收到消息“由于身份验证失败,无法满足安全令牌请求。”

这两个网站都托管在同一台机器上,并在同一个应用程序池下。两个网站都托管在端口80和具有不同的主机头......例如:client.website.com和service.website.com

我们使用在服务端的wsHttpBinding:

 <endpoint address="http://service.website.com/MessagingService.svc/wshttp" 
      binding="wsHttpBinding" 
      contract="WebServices.IMessagingService" 
      bindingNamespace="CNI/CNIMessenger" 
      bindingConfiguration="wsHttpBindingConfig" 
      name="wsHttpBinding"> 
     </endpoint> 

当我们尝试运行服务时,我们得到了上述错误。经过几个小时的调试后,我发现如果我使用服务配置地址而没有任何url,只需要wshttp并将我的客户端指向IP地址/端口一切正常。例如:

<endpoint address="wshttp" 
... And client address points to: http://127.0.0.1:8888/MessagingService.svc/wshttp 

当我改变了地址和网站使用service.website.com和保留的端口8888我继续得到同样的错误。

有没有人有这方面的见解?非常感谢!

回答

0

尝试添加以下到您的配置:

<host> 
     <baseAddresses> 
     <add baseAddress="http://service.website.com"/> 
     </baseAddresses> 
    </host> 

保留地址wshttp

相关问题