Just to add/clarify a few things here…
That’s incorrect.
A Custom Event in a Backend Workflow inherits whatever Privacy Rules settings the Backend Workflow uses.
So if the Backend Workflow is ignoring privacy rules, so too will any custom events triggered within it.
If an item can be ‘found in searches’ then any user that meets that privacy rule can access it. Whether that’s secure or not depends on the privacy rules themselves.
This is a reasonable approach, with 2 caveats…
Firstly, obviously this can only be used for ‘Things’ from the DB. It can’t be used for option sets, or API data, or primitive datatypes, calculated values or data manipulation etc. or anything more complex than defining single (or multiple) database items - so it has very limited use compared to using Custom Events.
And secondly it’s a lot more costly in WU compared with using Custom Events.
Using a Make Changes to a Thing action, although it does NOT incur WU charges for making changes to that thing (I’m almost certain it used to, but it doesn’t seem to now) it DOES incur 0.6 WU as a server action.
Custom events don’t seem to count as running a sever action, nor does a ‘return data’ action within a CE - so using a Custom Event as a variable costs 0 WU.
So, if you’re using 5 ‘Make changes to a thing’ actions in a backend WF to establish some data to work with elsewhere in the WF, you’ll incur WU costs for 5 server actions (that’s 3 WU) plus 5 searches (1.5 WU) and whatever data is returned (e.g. 0.5 WU) so a total WU cost of 5 WU.
Whereas you can use a single Custom Event to define all 5 items and it won’t cost anything to run it, so you only pay for the searches/data (actually, it makes no difference if you run 1 single CE or 5 separate CEs - since they don’t incur any server action charges).
So a total WU cost of 2 WU (5 searches plus the returned data) - less than half the cost of using Make Changes to Thing actions.
There’s no reason to think it’s faster but, as outlined above, it’s definitely more costly in WU - so not more efficient.