Configure step to run as another user

263
4
02-07-2024 10:49 AM
Status: Open
Ulises
by
Occasional Contributor III

We have a short workflow where all editors have the same privileges for productivity purposes.  Once a job is assigned to an editor the workflow will allow to create it's version, do the required edits, post, cleanup the version and close the job. There are no QC steps. Because of that any editor can edit the default version whenever he/she wants using WMX or not since the version must be public.  Otherwise post will fail due to privileges missing if Default is protected.  I've always saw this as a security concern.  Since early days using previous versions of WMX users needed to be configured as SDE in WMX/JTX Administrator to be allowed to post in the workflow but again, once the application opened users were able to change versions to Default and edit.  

If steps could be configured in the workflow to run as another user this could provide a way to better protect the Default version.  A "post" step set to run automatically as the SDE or version administrator will allow the editors to just edit child versions without access to directly update Default.

4 Comments
JohnAnderson1

Hi @Ulises . My organisation has grappled with the same issue over the years.

I gather from your post that you are using the older/classic versions of Workflow Manager and Job Tracking?

If you were to migrate to Branch Versioning, you could make use of constraint attribute rules to prevent users for editing the DEFAULT version directly.

Constraint attribute rules—ArcGIS Pro | Documentation

The Arcade for the constraint rule would look something like this:

var VersionName = GdbVersion($feature);
var index = Find('DEFAULT',VersionName);
if(index == -1) return true
else return false

By implementing this constraint rule, users can be given privileges to Post to the DEFAULT version but they will be prevented from editing the DEFAULT version.

Ulises
by

Hello @JohnAnderson1, sorry for the delay on this reply.  I was away for a while.  Thanks so much for your suggestion.  I will run a few test asap. I 

Ulises
by

@JohnAnderson1, thanks for your suggestion!  Is working great in our test environment.  We'll be implementing in production soon.  Awesome!

JohnAnderson1

That's great to hear, @Ulises  👍