Как я могу вызвать один скрипт из другого скрипта и передать PSCredential в качестве параметра?Передача PSCredential в качестве параметра для скрипта
код у меня есть это преобразование PSCredential в строку с System.Management.Automation.PSCredential
как строковое значение, так это не работает:
Ошибка:
Cannot process argument transformation on parameter 'cred'. Cannot convert the
"System.Management.Automation.PSCredential" value of type "System.String" to type "System.Management.Automation.PSCredential".
Код:
function getCurrentSequenceNumber([System.Management.Automation.PSCredential]$cred)
{
$scriptPath = 'D:\Ave\A\Scripts\UploadPasswordToStorageTable\ReadTableEntity\Read-TableEntity.ps1'
$argumentList = "-SubscriptionName $SubscriptionName -StorageAccountName $StorageAccountName -TableName $TableName -partitionKey $partitionKey -rowKey $rowKey -Key $Key -CredentialName $CredentialName -cred $cred"
$currentSequenceNumber = Invoke-Expression "$scriptPath $argumentList"
return $currentSequenceNumber
}
$cred = Get-Credential
$currentSequenceNumber = getCurrentSequenceNumber $cred
Я думаю, потому что вы кладете $ cred внутри кавычек, он все равно превращает его в строку. –
И это дало мне эту ошибку: &: Термин D: \ Ave \ A \ Scripts \ UploadPasswordToStorageTable \ ReadTableEntity \ Read-TableEntity.ps1 -SubscriptionName $ SubscriptionName -StorageAccountName $ StorageAccountName -TableName $ TableName -partitionKey $ partitionKey -rowKey $ rowKey -Key $ Key -CredentialName $ CredentialName -cred $ cred '- не распознается как имя командлета, функции, файла сценария или исполняемой программы. Проверьте правильность написания имени или, если включен путь, проверьте правильность пути и повторите попытку. –