Лучше всего создать быстрое расширение задачи CallTarget, которое использует Имитатор от Уве Кейм , например:
public class Impersonate : CallTarget
{
public string Domain { get; set; }
[Required]
public string UserName { get; set; }
[Required]
public string Password { get; set; }
public override bool Execute()
{
using (new Impersonator(this.UserName, this.Domain, this.Password))
{
return base.Execute();
}
}
}
Тогда звонок будет выглядеть так:
<Target Name="DoSms">
<....>
</Target>
<Target Name="Impersonate">
<Impersonate Targets="DoSms" UserName="username" Password="password" Domain="domain"/>
</Target>