protected override void _Rollback() { STEM.Sys.Security.Impersonation wu = new STEM.Sys.Security.Impersonation(); string userkey = "WINDOWSUSER_" + Domain + ":" + User; if (InstructionSet.InstructionSetContainer.ContainsKey(userkey)) { return; } if (!string.IsNullOrEmpty(Domain)) { wu.Impersonate(Domain, User, Password, !IsLocalUser); } else { wu.Impersonate(User, Password, !IsLocalUser); } InstructionSet.InstructionSetContainer.Add(userkey, wu); }
protected override bool _Run() { STEM.Sys.Security.Impersonation wu = new STEM.Sys.Security.Impersonation(); string userkey = "WINDOWSUSER_" + Domain + ":" + User; if (InstructionSet.InstructionSetContainer.ContainsKey(userkey)) { Message = "User already impersonated."; return(false); } if (!string.IsNullOrEmpty(Domain)) { wu.Impersonate(Domain, User, Password, !IsLocalUser); } else { wu.Impersonate(User, Password, !IsLocalUser); } InstructionSet.InstructionSetContainer.Add(userkey, wu); return(true); }