cancel
Showing results forย 
Search instead forย 
Did you mean:ย 
Data Engineering
Join discussions on data engineering best practices, architectures, and optimization strategies within the Databricks Community. Exchange insights and solutions with fellow data engineers.
cancel
Showing results forย 
Search instead forย 
Did you mean:ย 

Updating Job Creator to Service Principal

ramsai
New Contributor

Regarding data governance best practices: I have jobs created by a user who has left the organization, and I need to change the job creator to a service principal. Currently, it seems the only option is to clone the job and update it. Is this the recommended approach, or is there an alternative?

4 REPLIES 4

stbjelcevic
Databricks Employee
Databricks Employee

Only workspace admins can edit the job owner, and exactly one owner must be assigned. The owner can be a user or a service principal. I recommend also updating run-as to be the service principal as well.

In the jobโ€™s details panel, click Edit permissions, select the service principal, and set Owner; then Save. Only workspace admins can change the job owner.

In the workspace sidebar, open Jobs & Pipelines, select the job, then in Job details click the pencil next to Run as, search for the service principal, and Save.

I know that we can change the owner to a service principal and keep 'run as', but the main point is: is it possible to change the creator name?

stbjelcevic
Databricks Employee
Databricks Employee

Ah, I overlooked the part about "creator" - my bad. Creator doesn't really have any implications on running/ownership. @nayan_wylde gave a great answer, in my opinion.

nayan_wylde
Esteemed Contributor
In Databricks, the creator field for a job is immutableโ€”itโ€™s used as part of an audit trail, so you cannot change it once set. Databricks support confirms this, and their recommended workaround is to clone the job, which creates a new job under the correct creator (โ€œservice principalโ€) with identical configuration.
 

While you can't change the creator, you can effectively transfer ownership by adjusting resource permissions:

 

Grant the service principal "IS OWNER" permissions on the job using the Jobs API.

Adjust the jobโ€™s โ€œRun asโ€ user so it executes using the service principal identity.

Confirm the service principal has all necessary cluster and notebook permissions.

 

There's even a GitHub project that automates this processโ€”registering the service principal, granting manage rights, enabling run permissions, and reassigning ownership.