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 II

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?

1 ACCEPTED SOLUTION

Accepted Solutions

nayan_wylde
Esteemed Contributor II
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.

View solution in original post

5 REPLIES 5

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.

ramsai
New Contributor II

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 II
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.

Sanjeeb2024
Valued Contributor

I agree with @nayan_wylde , for auditing, creator is important and it should in immutable by nature. 

Sanjeeb Mohapatra