Run External Program step fails at task runtime with error 0x80070522 “A required privelage is not held by the client”

Symptom

When a task that uses impersonation contains a Run External Program step that runs a batch file it may fail at runtime with the following error:

0x80070522 “A required privilege is not held by the client”

Cause

Occurs where the impersonating account does not have sufficient rights to logon as a batch job.

Resolution

Change the group policy to allow the impersonating account to logon as a batch job.

  1. Start > Run  and type gpedit.msc to open the Group Policy Editor.
  2. Within the Group Policy Editor choose Computer Configuration > Windows Settings > Local Policies > User Rights Assignment.
  3. In the list of policies select Logon as a batch job and add the impersonating account user.