如何调用带有凭据的字符串中存储的powershell命令?

时间:2018-09-21 09:18:28

标签: powershell

我想从不同的字符串部分构建命令...

function Set-ADUserProperty ( $userSam, $propertyName, $propertyValue, $cred )
{
   $command = "Set-ADUser -Identity '$userSam' -$propertyName '$propertyValue'"
   Invoke-Expression $command
}

我想这样使用它...

$myCred = Get-Credential myAdminUser
Set-ADUserProperty -userSam 'joedoe' -propertyName 'MobilePhone' -propertyValue '1234567' -cred $myCred
Set-ADUserProperty -userSam 'joedoe' -propertyName 'Title' -propertyValue 'SD operator' -cred $myCred

没有证书就没事了... 不幸的是,我不知道如何使用凭据运行它:-(

1 个答案:

答案 0 :(得分:0)

这只狼!

安装有...

Invoke-Expression $command

应该使用...

Invoke-Command -ScriptBlock { param ($cred); $cmd="Set-ADUser -Identity 'joedoe' -MobilePhone '1234567' -Credential `$cred"; Invoke-Expression $cmd} -ArgumentList $cred