1

ListEventReceiver我需要从特殊用户凭据下执行 PowerShell 脚本。我发现Runspace哪个可以很好地执行脚本,但是如何使安全(代码中没有密码)“运行为”?

管道

string cmdArg = "C:\\Users\\Administrator\\Documents\\userExist.ps1 " + mailstring;
Runspace runspace = RunspaceFactory.CreateRunspace();
runspace.Open();
Pipeline pipeline = runspace.CreatePipeline();

pipeline.Commands.AddScript(cmdArg);
pipeline.Commands[0].MergeMyResults(PipelineResultTypes.Error, PipelineResultTypes.Output);
Collection<PSObject> results = pipeline.Invoke();
var error = pipeline.Error.ReadToEnd();
runspace.Close();

我阅读了有关安全存储服务的信息,但我认为它仅适用于整个服务、页面或列表,不能用于单一功能?

有谁知道如何解决这个问题?

4

1 回答 1

0

关于以其他身份运行脚本,您是否尝试过RunWithElevatedPrivileges?如果这不能解决问题,则可能值得考虑授予应用程序池的帐户足够的权限来完成所需的任务。

于 2012-06-21T02:38:47.583 回答