Privacy Rules not working as expected

Hi All!

I have tightening up the privacy rules on a client app and I have a weird thing going on where the privacy rules I have put it are not working as expected.

I have attached a screenshot showing how it is currently set up.

The thing that is confusing me is - why does the ‘Amount’ field remain available in a backend workflow (Ignore Privacy Rules is unticked) to the Current User, who created the record; even though the ‘Amount’ field is unticked?

If I untick the ‘Find this in Searches’ (and tick the ‘Amount’ field) as expected the ‘Amount’ field is blank when I reference it. But when I tick ‘Find this in Searches’ and untick ‘Amount’ it appears.

This is unexpected.

Now, I actually do want to be able to see the amount, so it does work as expected when I tick both Find in Searches and Amount. But this is messing with my understanding of how Privacy works. I am wondering whether it is s bug, or whether I am misunderstanding something fundamental?

Does it have something to do with the creator being the current user? Or the record being created in the same backend workflow?

The thing that is confusing me is - why does the ‘Amount’ field remain available in a backend workflow

What do you mean when you say the ‘amount’ field is available in a backend workflow?

Available where?

I mean, when I reference as output (it is being injected into an email) the Amount shows. It should be blank.

And you’re sure you’re not logged in as an Admin user?

1 Like

read your conditional statements carefully and make sure you preview the app as a user of the app and not the admin
preview using any user from your app data

1 Like

@adamhholmes @tobixzybolumole I am using Run as to simulate one of the users (who is not an admin).

(All of this is because I have been creating “Unit Tests” (BE Workflows, triggered from the front end as a user, to test out some of functionality pre/post privacy changes).

From your inital post, i don’t see any issue there?
find in searches simply means the database record will be visible on a search results page like repeating groups and ticking the datafield box just means you can actually control which field you want to be visible

1 Like

Yep, that is my understanding too. Which his why this is boiling my mind. It seems very unexpected.

I am creating the Stripe Transaction record manually during the run of the Unit Test workflow. It is owned by the user I am logged in as.

Initially I thought because I was referring to “Result of Step X…” that was reason, so I changed the action to do an actual search, first by Creator, and then by other fields. And it still acts the same.

Initially the record was blank when searched, because they were not owned by the user logged in. So I created the Strip record to make sure, for each run of the test, whoever was logged in, there would be a Stripe Transaction.

To test the rules were working properly I then removed (unticked) various things, to prove the opposite. And this is when I got this issue.