J'ai un service Web simple grâce auquel la sécurité est gérée via l'authentification basée sur les formulaires.Authentification basée sur les formulaires WCF via l'application Web - Transmission des informations d'identification
WCFTestService.ServiceClient myService = new
WCFTestService.ServiceClient();
myService.ClientCredentials.UserName.UserName = "user";
myService.ClientCredentials.UserName.Password = "secret";
lblResult.Text = myService.GetData(1231);
myService.Close();
J'y accède via une application web. Donc, je veux faire ce qui précède une fois mais pour la sécurité/performance ne doit pas le faire à nouveau. Je pensais quelque chose comme le ci-dessous, mais comme j'utilise FormsAuthentication cette ... ne fonctionnera pas
//Obtain the authenticated user's Identity and impersonate the original caller
using (((WindowsIdentity)HttpContext.Current.User.Identity).Impersonate())
{
WCFTestService.ServiceClient myService2 = new WCFTestService.ServiceClient();
lblResult.Text = "From Logged On Credentials"+myService2.GetData(1231);
myService2.Close();
}