Restrict access to sensitive columns

Hello glide community,

I’ve been building a CRM tool which is mostly used to manage leads and projects that result from them. At first I’ve only been using the tool for internal purposes, but now I’ve added the ability to let external affiliates see leads they’ve referred and projects that came out of their referrals.

I’m now in a tricky situation where I need those external users to see 90% of the information that’s stored with projects, since it’s relevant for their tracking needs, as well as commission payments. However, the projects table also contains information about production cost, margins and other internal notes.

How can I make the project data available to some users without risking them having access to sensitive project data?

I’ve tried using relations. For example, I’ve added a “Number of projects” column to the leads table. It calculates the number correctly, however since an external user isn’t a row owner of any of the rows in the projects table, it always shows 0 to those users. Is there a way to fix that?

I think your best option here would be to remove all columns containing sensitive data from your Projects Table, and store them in a separate table that’s protected by row owners.

You could relate the two tables, but only those users that have access to the second table would see anything through the relations.

3 Likes

Thanks, that’s what I’ve started doing. However now that I’ve set up relations from each table to the other, how can I display the data from the second table on a page?
For example, I want to use the “big numbers” display, but I can’t select the relation nor the table I want to pull the data from.
Any ideas?

You need to add Lookup columns to pull values out of the related row.

2 Likes

That did the trick. Thanks a ton!

1 Like

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