使用其他用户帐户的Powershell脚本

时间:2014-04-03 13:14:17

标签: powershell credentials

我对powershell不太好(说实话,我很糟糕!)但我需要做一个下载图片并将其存储在特定共享文件夹中的脚本。我可以轻松下载图片,但我需要存储它们的文件夹受到保护,并且只有一个用户(具体创建)可以访问它。

所以我的问题是:如何配置我的脚本以使用此用户凭据?我在网上搜索,但我无法理解。正如我所说,我不是PowerShell用户,而且我在家中使用OS X,因此我对Windows的权限和权限都不满意。因此,我们非常感谢一个清晰易懂的答案!

感谢' s!

1 个答案:

答案 0 :(得分:0)

Invoke-Command命令与-Credential-ScriptBlock参数一起使用,以将PowerShell ScriptBlock作为其他帐户启动。我相信您还需要启用PSRemoting才能使Invoke-Command命令工作,即使在本地系统上也是如此。

$Credential = Get-Credential;
$ScriptBlock = { Copy-Item -Path c:\test\test.txt -Destination c:\test2\test.txt; };
Invoke-Command -Credential $Credential -ScriptBlock $ScriptBlock;

更复杂的解决方案是将Start-Process cmdlet与-Credential参数一起使用,以在备用凭据下启动外部可执行文件。如果你只是想开始使用PowerShell代码,那么最好不要使用Invoke-Command

$Credential = Get-Credential;
$Executable = 'c:\path\to\file.exe';
Start-Process -FilePath $Executable -Credential $Credential -Wait -NoNewWindow;