Возможно, класс
System.Net.CredentialCache
может быть полезным ...
Он имеет свойства DefaultCredentials и DefaultNetworkCredentials, которые вы можете использовать.
Конечно, вы должны будете убедиться, что ваше приложение работает под теми учетными данными, которые вы хотите (то есть учетными данными текущего пользователя).
Это можно сделать, позвонив по номеру
AppDomain.CurrentDomain.SetPrincipalPolicy (PrincipalPolicy.WindowsPrincipal);
В начале вашей программы.
Затем, когда вы инициализируете службу WCF, вы можете использовать DefaultNetworkCredentials
, предоставленный CredentialCache
.
channel.Credentials.Windows.ClientCredential = CredentialCache.DefaultNetworkCredentials;
IService1 service = channel.CreateChannel();