Row owners

A secure way to give users exclusive access to their own data

​

Row owners allows you to make only certain rows available to certain users. Only the rows with the current user's email in the row owners column will have access to that row.

Row owners is similar to filtering a list by the signed in user, but has some important differences.

  • If your sheet has information that is private to certain users then you should use row owners as it is much more secure.

  • If however you have a data set where sometimes the users see all the data and sometimes see only their data - then you should use filtering.

If your spreadsheet contains confidential data (like a passwords list) then split that data up in a separate sheet and use row owners on that one. Try not to rely on filtering for confidential data.

Enabling row owners

Your app must use Public with email or Email whitelist sign-in options to use row owners. Glide can then use the email address of the current user to determine which rows that user owns.

To enable row owners, click the dropdown menu on a column in the data editor which contains individual emails and select Make Row Owner.

In the app below you can see a full list of interviewees. When we click Make Row Owner on the Interviewer column we can see that the list gets filtered to only show rows with the current signed in user's email address.

Row owners is different to filtering data per user in that it's more absolute. With filter you could have two lists reading from the same sheet. In one list you could filter per user and in the other list you could show all users all items.

With row owners however, you cannot do this. By enabling a row owner you give complete ownership (and privacy) to the user that owns that row.

Array columns - multiple row owners

You can also use an array column as a row owner column to give multiple people access to the same row. Simply choose the array column in the data editor and make it the row owner column in the same way.

You cannot make a computed column a row owner column. For example if you had a Template Column or If → Then → Else Column outputting an email as a result then you couldn't then make that column a row owner column.

​