2010-11-19 86 views
5

This answer解釋說,調用的.asmx Web服務時,有沒有必要指定要使用的身份驗證類型:什麼是在WCF中傳遞DefaultCredentials的等價物?


WebServiceProxy proxy = new WebServiceProxy(); // Derived from SoapHttpClientProtocol 

proxy.Credentials = CredentialCache.DefaultCredentials; 

此方法適用於NTLM和Kerberos身份驗證。它將傳遞代碼運行的windows帳戶的憑據。


WCF中的等價物在NTLM和Kerberos環境中都有效嗎?

回答

4

在WCF中,您需要在WCF服務的綁定中指定身份驗證。確保客戶端和服務器使用相同的認證方案。

的web.config:

<binding name="WindowsClientOverTcp"> 
    <security mode="Transport"> 
     <transport clientCredentialType="Windows" /> 
    </security> 
</binding> 
+0

那麼有沒有辦法避免指定認證?也就是說,您需要知道該環境是Kerberos還是NTLM? – 2010-11-19 04:22:22

+0

使用Kerberos時,您的客戶端和服務器在使用之前需要滿足一些特定條件,否則Windows身份驗證將默認使用NTLM – ericphan 2010-11-19 05:30:23

相關問題