使用PowerShell修改具有最高权限的任务的触发器
我有一个PowerShell脚本,它读取作业名称和触发器的csv文件,然后使用Set-ScheduledTask cmdlet更新任务计划程序上作业的触发器。我能够更新作业的触发器。但是很少有任务以最高权限运行。我的脚本失败了,说“访问被拒绝” 下面是我使用的代码:使用PowerShell修改具有最高权限的任务的触发器,powershell,powershell-4.0,taskscheduler,windows-task-scheduler,Powershell,Powershell 4.0,Taskscheduler,Windows Task Scheduler,我有一个PowerShell脚本,它读取作业名称和触发器的csv文件,然后使用Set-ScheduledTask cmdlet更新任务计划程序上作业的触发器。我能够更新作业的触发器。但是很少有任务以最高权限运行。我的脚本失败了,说“访问被拒绝” 下面是我使用的代码: $user= "SYSTEM\serviceaccount" # Specify the account to run the script $password="password" $m
$user= "SYSTEM\serviceaccount" # Specify the account to run the script
$password="password"
$mySettings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries
$pricipalSettings= New-ScheduledTaskPrincipal -UserId $user -LogonType Password -RunLevel Highest
Set-ScheduledTask -TaskPath $taskPath -TaskName $jobName -User $user -Password $password -Trigger $TriggerFinal -Settings $mySettings
下面是我得到的错误
Set-ScheduledTask : Access is denied.
At C:\UpdateTriggers.ps1:50 char:9
+ Set-ScheduledTask -TaskPath $taskPath -TaskName $jobName -Trigger $Trigg ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : PermissionDenied: (PS_ScheduledTask:Root/Microsoft/...S_ScheduledTask) [Set-ScheduledTask], CimException
如果需要任何详细信息,请告诉我。为了获得
域
,您只需在CMD:echo%userdomain%
此脚本创建具有最高级别权限的任务计划程序
$User= "DOMAIN\user"
$Trigger = New-ScheduledTaskTrigger -Once -At $TriggerInfo
$Action = New-ScheduledTaskAction -Execute 'PowerShell.exe' -Argument "-NonInteractive -NoLogo -NoProfile -File c:/Users/user/documents/script.ps1"
Register-ScheduledTask -TaskName "TaskScheduler" -Trigger $Trigger -User $User -Action $Action -RunLevel Highest –Force
选中此项:
-RunLevel Highest –Force
为了获得
域
,您只需在CMD:echo%userdomain%
此脚本创建具有最高级别权限的任务计划程序
$User= "DOMAIN\user"
$Trigger = New-ScheduledTaskTrigger -Once -At $TriggerInfo
$Action = New-ScheduledTaskAction -Execute 'PowerShell.exe' -Argument "-NonInteractive -NoLogo -NoProfile -File c:/Users/user/documents/script.ps1"
Register-ScheduledTask -TaskName "TaskScheduler" -Trigger $Trigger -User $User -Action $Action -RunLevel Highest –Force
选中此项:
-RunLevel Highest –Force