mon client sur le serveur A appelle un service sur B, qui appelle un service sur C.
Afin d'obtenir l'appel de travail B> CI doivent faire:fenêtres WCF pouvoirs
channel.Credentials.Windows.ClientCredential =
new System.Net.NetworkCredential("WndowsUserName", "WindowsPassWord");
IService1 service = channel.CreateChannel();
etc Le nom d'utilisateur et le mot de passe sont les informations d'identification Windows utilisées à partir de A-> B Bien sûr, je ne veux pas coder en dur cela, alors comment puis-je faire cela sans codage en dur?
J'ai essayé, sans succès:
WindowsIdentity callerWindowsIdentity =
ServiceSecurityContext.Current.WindowsIdentity;
using (callerWindowsIdentity.Impersonate())
DefaultNetworkCredentials a toutes les propriétés vides lorsque je l'exécute dans l'application client et à partir de mon service!?! Et ce lien est en chinois :) –