2012-08-30 45 views
2

我有一個WCF託管在Windows服務中,並使用用戶域帳戶運行。WCF wsHttpBinding安全錯誤

域中的所有客戶端(控制檯應用程序或Web應用程序)工作得很好。

我有一個控制檯應用程序不在不起作用的域中。

Herei是錯誤:

Exception non gérée : System.ServiceModel.Security.SecurityNegotiationException: 
L'appelant n'a pas été authentifié par le service. ---> System.ServiceModel.Fau 
ltException: The request for security token could not be satisfied because authe 
ntication failed. 

這裏是WCF服務器配置:

 <wsHttpBinding> 
     <binding name="TransactionalBind" transactionFlow="true"/> 
     </wsHttpBinding> 

[...] 

    <endpoint address="http://machine.domain.fr:1083/MyService/" 
       binding="wsHttpBinding" 
       bindingConfiguration="TransactionalBind" 
       contract="MyService.IMyService"/> 
[...] 

    <behavior name="MyBahavior"> 
     <serviceMetadata httpGetEnabled="True"/> 
     <serviceDebug includeExceptionDetailInFaults="True" /> 
     <dataContractSerializer maxItemsInObjectGraph="2147483647" /> 
    </behavior> 

這裏是我的客戶端配置:

 <wsHttpBinding> 
      <binding name="WSHttpBinding_IMyService" closeTimeout="00:01:00" 
       openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" 
       bypassProxyOnLocal="false" transactionFlow="true" hostNameComparisonMode="StrongWildcard" 
       maxBufferPoolSize="524288" maxReceivedMessageSize="65536" 
       messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" 
       allowCookies="false"> 
       <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" 
        maxBytesPerRead="4096" maxNameTableCharCount="16384" /> 
       <reliableSession ordered="true" inactivityTimeout="00:10:00" 
        enabled="false" /> 
       <security mode="Message"> 
        <transport clientCredentialType="Windows" proxyCredentialType="None" 
         realm="" /> 
        <message clientCredentialType="Windows" negotiateServiceCredential="true" 
         algorithmSuite="Default" /> 
       </security> 
      </binding> 
     </wsHttpBinding> 
[...] 

     <client> 
      <endpoint address="http://machine.domain.fr:1083/MyService/" 
       binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_IMyService" 
       contract="wsArchi.IMyService" name="WSHttpBinding_IMyService"> 
      </endpoint> 
     </client> 

你能幫助我嗎?

非常感謝

回答

-1

嘗試使用basicHttpBinding的... 當我用WsHttpBinding的我面臨的問題.... basicHttpBinding的解決我的問題。!

+0

BasicHttpBinding未加密! –