Search code examples
powershellscheduled-tasks

Create a scheduled task with powershell


I want to create a scheduled task using a gMSA account via powewershell but I get some errors when I try to register the task. Below you can see my code and the error:

$action = New-ScheduledTaskAction  "mypath\myscript.ps1"
$trigger = New-ScheduledTaskTrigger -Weekly -At 12:00 
$user =  New-ScheduledTaskPrincipal -UserId domain\gmsa -LogonType Password -RunLevel Highest
Register-ScheduledTask -TaskName "test" -Trigger $trigger -Action $action -User $user

This is the error:

 Register-ScheduledTask : The parameter is incorrect. At line:1 char:1
 + Register-ScheduledTask -TaskName "test" -Trigger $trigger -Action ...
 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     + CategoryInfo          : InvalidArgument: (PS_ScheduledTask:Root/Microsof     t/...S_ScheduledTask)
 [Register-ScheduledTask], CimException
     + FullyQualifiedErrorId : HRESULT 0x80070057,Register-ScheduledTask

Solution

  • Since you've already configured a logon principal for the task, use the -Principal parameter instead of -User:

    Register-ScheduledTask -TaskName "test" -Trigger $trigger -Action $action -Principal $user