2012-11-27 149 views
0

如果我可以有一個hello world的例子,我將如何讓客戶端必須提供特定的用戶名和密碼才能使用wcf服務,我將不勝感激。我自己託管我的服務,因此它不在IIS上。WCF自託管需要身份驗證

我有服務器A和客戶端B.它們是同一網絡上的不同計算機。

我使用的是默認的Service1類,當創建新的WCF類庫時,Visual Studio會創建該類。所以我創建服務器A.該服務

然後在客戶端BI添加服務引用這恰好是該地址: http://10.10.1.135:8732/Design_Time_Addresses/WcfServiceLibrary1/Service1/mex (客戶端B是一個控制檯應用程序)

爲了消耗該服務我必須這樣做:

static void Main(string[] args) 
    { 
     ServiceReference1.Service1Client svc = new ServiceReference1.Service1Client(); 

     svc.ClientCredentials.Windows.ClientCredential.UserName = "MyUserName"; 
     svc.ClientCredentials.Windows.ClientCredential.Password = "MyPassword"; 

     var a = svc.GetData(5); // consume the service    
    } 

注意我必須使用域用戶的用戶名和密碼。 如何使用自定義密碼做類似的事情?我不想提供這些cridentials,我也不想在Windows上創建新用戶。如果我可以驗證數據庫,那將會很好。

回答