Row owner not available for relation lookup

I have this table in which I’m matching the unique eventID to unique guestID (because one person can book multiple slots at an event).

I want to make the users row owners so they won’t see other events and slot bookings.
With filtering it works but it’s not secure (according to glide warnings).
So I made a lookup to get the email and try to make the row owner that guest email


But it doesn’t have to option to be row owner.

So I tried to make the relation itself row owner


This didn’t work either.

What am I doing wrong here?

Row owners can’t be applied to computed columns.

You need to make it a row owner in the source sheet - eg. the one at the other end of the relation.

2 Likes

source sheet? But I’m getting the email and userID from the users sheet and that’s already protected. How does that protection extend to my slots sheet?

If the only way to create row owners is through emails… I would need to attach not only the userID but also the user email when I’m creating a new row in the slots table?

I’m not sure if I’m following the correct train of thought here.

If you already have row owners applied in your users sheet, then that should be all you need.
Remember - row owners prevents data from being downloaded. So even though you might create a relation in another table that references the email column in your users table - if that column is protected by row owners then the data won’t be available except to those users that “own” the rows.

You can test this yourself by previewing the table you’ve shown as different users in the builder. You should see that those rows that aren’t accessible to the current user will be greyed out.

3 Likes

Hmmm yes I figured out. The relation is properly protected by the owners of the related table but the slot table itself is not and any information that is not natively inside it is also unprotected.

I’ll see if I can whip something up using actions.

I think I’m addition, or instead of, the guest ID, you would have to store the user email to the table so you can apply row owners. Just be aware that once you apply row owners, then all event guest data becomes user specific as well, so the event owner can no longer see all guests for the event. To get around that, you would need to also add a column to store the event owner email and also make that column a row owner. That way both the guest as well as the event owner are row owners and can access the data in the app.

4 Likes

I ended up doing exactly that and it works decently well.

Now if I ever implement a change user email functionality it’s going to be a pickle but that’s a problem for future me :upside_down_face:

1 Like

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.