Выполняется нижеприведенный cmdlet:
$User = [email protected]
$PasswordFile = C:\temp\Cred\Password.txt
$KeyFile = C:\temp\Cred\AES.key
$key = Get-Content $KeyFile
$MyCredential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User, (Get-Content $PasswordFile | ConvertTo-SecureString -Key $key)
Start-Process -FilePath C:\Temp\7z2301-x64.exe -Credential $MyCredentialОднако я получаю следующую ошибку, даже если передаю правильные учетные данные:
Start-Process : This command cannot be run due to the error: The user name or
password is incorrect.
At line:13 char:1
+ Start-Process -FilePath C:\Temp\7z2301-x64.exe -Credential $MyCredent ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Start-Process], InvalidOp erationException + FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.C ommands.StartProcessCommandМожет кто-нибудь помочь с этим?
Заранее спасибо!
Подготовка вашей среды
Прежде чем мы погрузимся в скрипт, давайте убедимся, что ваша среда настроена правильно:
Создание сценария PowerShell
Создайте сценарий, который подключается к удаленному компьютеру, аутентифицируется с использованием сохраненных учетных данных и выполняет указанный пакетный файл:
- Создайте новый файл сценария PowerShell: Откройте выбранный вами текстовый редактор и создайте новый файл с расширением `.ps1`, например, `RunRemoteBatchFile.ps1`.
Выполнение сценария
Наконец, давайте выполним сценарий и запустим удаленный пакетный файл:
- Перейдите к файлу сценария: Используйте команду `cd` для навигации к папке, в которой сохранен ваш сценарий.
Ваш сценарий должен теперь подключиться к указанному удаленному компьютеру, аутентифицироваться с использованием сохраненных учетных данных и выполнить указанный пакетный файл на удаленном компьютере. Теперь вы безопасно сохранили свои учетные данные и выполнели пакетный файл на удаленном компьютере с помощью PowerShell!
Этот метод приносит дополнительный уровень безопасности и эффективности, делая его полезным решением для управления несколькими удаленными компьютерами. PowerShell предлагает гибкость и простоту в управлении такими задачами, минимизируя риск экспозиции конфиденциальной информации.
Enter-PSSession <IPaddress> -Credential Administrator$username = Administrator
$password = ConvertTo-SecureString ****** -AsPlainText -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList($username, $password)
$serverNameOrIp = *****
Enter-PSSession -ComputerName $serverNameOrIp -Credential $credEnter-PSSession : Connecting to remote server ****** failed with the following error message : WinRM cannot
process the request. The following error with errorcode 0x80090311 occurred while using Kerberos authentication: There
are currently no logon servers available to service the logon request.
Possible causes are: -The user name or password specified are invalid. -Kerberos is used when no authentication method and no user name are specified.Kerberos принимает имена пользователей домена, но не локальные имена пользователей.
Удаленный компьютер и порт не имеют служебного имени (SPN).
Клиентский и удаленные компьютеры находятся в разных доменах, и между ними нет доверия.
После проверки вышеуказанных проблем, попробуйте следующее:
Проверьте журнал событий на наличие событий, связанных с аутентификацией.
Измените метод аутентификации; добавьте компьютер назначения в настройку конфигурации WinRM TrustedHosts или используйте транспорт HTTPS.
Обратите внимание, что компьютеры в списке TrustedHosts могут не быть аутентифицированы.
- Для получения дополнительной информации о конфигурации WinRM выполните следующую команду: winrm help config. Для дополнительной информации см. тему справки about_Remote_Troubleshooting.
На C:\Users\Administrator\Downloads\cred.ps1 строка 6:
Enter-PSSession -ComputerName $serverNameOrIp -Credential $cred
CategoryInfo : InvalidArgument: (******:String) [Enter-PSSession], PSRemotingTransportException
FullyQualifiedErrorId : CreateRemoteRunspaceFailed
Пожалуйста, обратите внимание, что удаленный сервер находится в списке доверенных хостов.



