At our studio, we have a render service user that runs Worker when a user logs out of their machine. Otherwise, the user can launch Worker themselves manually or it’ll run through idle detection under that user’s account. The issue we run into is on NDA jobs where certain jobs have restricted access and only allow users on that job. So when a user submits a job from that NDA job, it will render fine with our render service user but error on the normal users saying it cannot load the scene.
We do not have Render Job as User enabled. I tested enabling it and changing the credentials of the submitting user to that of the render service user, but that just led to other permissions issues with AppData and plugin sandboxing.
Anyway, I was wondering what others have done to workaround this? What is the suggested workflow?
Some thoughts I had were to have dynamic groups. I already made a script that adds machines to the proper groups upon Worker startup. So they automatically get added to gpu
or cpu
and whatnot. I was thinking of adding a feature where when the Worker starts up, if it is running under the render service user, then it’ll add the groups nda_gpu
and nda_cpu
. Then when it starts up under a regular user, it’ll just remove those groups. Am I overthinking the solution?