【发布时间】:2010-10-14 19:05:44
【问题描述】:
我正在尝试连接到可通过 https 访问并需要身份验证的服务。
我得到的错误是:
测试方法 TestProject1.UnitTest1.TestReharB2B 抛出异常: System.ServiceModel.Security.MessageSecurityException: HTTP 请求未经授权 客户端认证方案 '匿名的'。身份验证标头 从服务器收到的是“基本 领域="应用程序"'。 ---> System.Net.WebException:远程 服务器返回错误:(401) 未经授权..
在我看来,用户名和密码没有发送到服务。我错过了什么?
代码:
EndpointAddress address = new EndpointAddress(
new Uri("https://84.52.158.151:8443/JavaStore/services/B2BService"),
EndpointIdentity.CreateDnsIdentity("JavaStore"),
new AddressHeaderCollection()
);
BasicHttpBinding binding = new BasicHttpBinding();
binding.Security.Mode = BasicHttpSecurityMode.TransportWithMessageCredential;
binding.Security.Message.ClientCredentialType = BasicHttpMessageCredentialType.UserName;
var client = new ReharB2BService.B2BServicePortTypeClient(binding, address);
client.ChannelFactory.Credentials.UserName.UserName = "dotNet";
client.ChannelFactory.Credentials.UserName.Password = "dotnetpwd";
client.Open();
client.getAllItems();
【问题讨论】:
标签: visual-studio wcf authentication ssl