使用WindowsIdentity作为WCF ClientCredential

时间:2014-03-03 19:53:46

标签: c# wcf

我正在从Windows服务调用WCF服务,我想通过运行该服务的Windows用户对客户端进行身份验证。

由于各种原因(主要是流/ SSL),我必须对传输凭据使用匿名身份验证。有没有办法通过邮件发送我的WindowsIdentity,就像你通常发送ClientCredentials.Username.Username或ClientCredentials.Username.Password一样?

BasicHttpBinding binding = new BasicHttpBinding();
binding.Security.Mode = BasicHttpSecurityMode.TransportWithMessageCredential;
binding.Security.Message.ClientCredentialType = BasicHttpMessageCredentialType.UserName;    
binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.None;            
binding.Security.Transport.ProxyCredentialType = HttpProxyCredentialType.None;      

ServerContractClient serverConnection = new ServerContractClient(binding, new EndpointAddress(url));

string username = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
serverConnection.ClientCredentials = ???

0 个答案:

没有答案