Как я могу запустить определенный кодовый блок в PowerShell от имени администратора

#powershell

Вопрос:

Я хочу установить ключи реестра в сценарии PowerShell, но сценарий должен выполняться от имени пользователя, вошедшего в систему, и только та часть, в которой установлены ключи реестра, должна запускаться с правами администратора.

Это то, что у меня еще есть, к сожалению, это не работает:

 #Run ScriptBlock as admin
$username = ".admin"
$password = ConvertTo-SecureString "adminpassword" -AsPlainText -Force
$credential = [pscredential]::new($username,$password)
Start-Process -WindowStyle Hidden -FilePath "powershell" -Credential $credential - ArgumentList '-noprofile -command amp;{$ScriptBlock -verb runas}'
 

Есть ли лучший способ сделать это? Я действительно новичок в написании сценариев.

Большое спасибо!

Комментарии:

1. Это бессмысленно, вы также можете предоставить пользователю те же (или ограниченное подмножество) прав, .admin поскольку он просто сможет получить учетные данные из сценария… это означает, что если .admin единственный человек, имеющий доступ на запись к разделу реестра, он должен быть единственным, кто может (удаленно с помощью сценария?) измените разделы реестра.

2. Какую проблему вы на самом деле пытаетесь решить? (В частности, почему вошедшему в систему пользователю, который не является администратором, необходимо обновлять значения реестра, если у него нет разрешения?)

3. @Bill_Stewart скрипт запускает ExSync.exe для подписей outlook файл .exe должен быть выполнен пользователем, вошедшим в систему, в противном случае подписи не работают. Но когда пользователь запускает программу, появляется сообщение об ошибке, но оно не влияет на систему(все пользователи получают сообщение об ошибке в журнале событий, но только некоторые получают сообщение об ошибке). С помощью реестра я изменяю значение DontShowUI на 1, когда программа запущена, и на 0, когда программа перестала работать.

4. Это звучит как вопрос для того, кто написал ваш исполняемый файл: «Как я могу запустить ваш исполняемый файл без прав администратора и без видимого графического интерфейса?»

5. @Bill_Stewart Я мог бы решить проблему, предоставив всем пользователям конкретное разрешение на запись ключа, который я хочу отредактировать в своем сценарии.