¿Cómo puede un programa C# que se ejecuta como LocalSystem hacerse pasar por la identidad de inicio de sesión de otro usuario temporalmente? En términos generales, tengo un servicio de Windows que me gustaría ejecutar como LocalSystem, pero a veces imitar al usuario XYZ (cuando se conecta a un db usando la seguridad integrada de Windows).Suplantación de Windows de C#
Lo más importante de todo: ¿hay alguna manera de hacer esto sin conocer la contraseña del otro usuario?
Nota: si una contraseña es obligatoria, existe una estrategia recomendada para almacenar una contraseña de forma segura (C# y/o vbscript).
Para ver el código de suplantación, consulte los siguientes dos artículos de Code Project: [http://www.codeproject.com/KB/cs/cpimpersonation1.aspx](http://www.codeproject.com/KB/cs/cpimpersonation1 .aspx) [http://www.codeproject.com/KB/cs/zetaimpersonator.aspx] (http://www.codeproject.com/KB/cs/zetaimpersonator.aspx) y el artículo de Microsoft KB en el que se basan: [http://support.microsoft.com/default.aspx?scid=kb; en-us; Q306158] (http://support.microsoft.com/default.aspx?scid=kb;en-us;Q306158) – mundeep