Generally TSQL job step runs under context of agent service account when the job owner belongs to sysadmin role. Unless a different user account is set in the advanced pane. However if the job owner is not a sysadmin, then job executes in context of the job owner.

I have job step that is having ssis package. Run as value is empty.

Assume the job owner is not a sysadmin. Then will this job step run under the context of sql job owner?

  • Can you provide a screenshot? The Run As field for an SSIS job step shouldn't normally be empty, it defaults to SQL Server Agent Service Account when you create it, and remains that unless you specifically change it to a suitably configured proxy.
    – HandyD
    Aug 19 at 22:56
  • Only a member of sysadmin can see the agent service in the dropdown.
    – variable
    Aug 20 at 2:28
  • Correct, but for non-sysadmins, if you don't have a proxy assigned with sufficient permissions then the agent job won't run at all, it will throw an error Non-SysAdmins have been denied permission to run DTS Execution job steps without a proxy account.. These jobs execute DTExec outside of the SQL Server process, so for security reasons, only sysadmins or a proxy account with appropriate permissions can run these types of jobs steps, and only job owners assigned these proxies can correctly configure an agent job to run SSIS packages without sysadmin rights.
    – HandyD
    Aug 20 at 2:42
  • My first comment was misleading, I was assuming a sysadmin was creating the job, didn't read your question properly, sorry.
    – HandyD
    Aug 20 at 2:44
  • So for non syasdmin user, leaving the run as field as blank will not be able to run the job. Is there any other way (other than proxy) to prevent the denied permission error?
    – variable
    Aug 20 at 3:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.