WCF自托管需要身份验证

时间:2012-11-27 02:06:14

标签: c# wcf authentication

如果我能有一个hello world示例,我将如何使客户端必须提供特定的用户名和密码才能使用wcf服务。我自己托管我的服务因此它不在IIS上。

我有服务器A和客户端B.它们是同一网络上的不同计算机。

我正在使用visual studio在创建新的WCF类库时创建的默认Service1类。所以我在服务器A上创建了这个服务。

然后在客户端B上添加一个对该地址的服务引用,恰好是: 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            
    }

注意我必须使用域用户的用户名和密码。 如何使用自定义密码执行类似操作?我不想提供这些问题,我也不想在Windows上创建新用户。如果我可以对数据库进行验证,那将会很好。