# User Profiles for public viewing purposes

**URL:** https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530
**Category:** Ask for Help
**Created:** [March 8, 2024, 8:58pm UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530 "2024-03-08T20:58:02Z")
**Posts on this page:** 17
**Page:** 1

<div class="post-metadata">

### Author: ![Joe](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/joe/32/54373_2.png) [@Joe](https://community.glideapps.com/u/Joe)
#### Post date: [March 8, 2024, 8:58pm UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/1 "2024-03-08T20:58:02Z")

</div>

Does anyone know how to create a public profile page thats invisible but just shows following/followers for posts or chat?

Is it just a hidden page with the Users table or a separate user table? Drawing a blank!  
Thanks

---

<div class="post-metadata">

### Author: ![Collin\_Stedham](https://avatars.discourse-cdn.com/v4/letter/c/13edae/32.png) [@Collin\_Stedham](https://community.glideapps.com/u/Collin_Stedham)
#### Post date: [March 9, 2024, 12:55am UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/2 "2024-03-09T00:55:13Z")

</div>

I honestly don’t know how to put in words, but if you are asking what I think you are asking you want to make a user profile page that others can view. I’ll post about my use case and how I did it in a little bit

Hope I can help?

#glidebeyondbusiness

---

<div class="post-metadata">

### Author: ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)
#### Post date: [March 9, 2024, 1:04am UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/3 "2024-03-09T01:04:52Z")

</div>

I’m not sure what you mean by “public profile page that’s invisible”? Do you mean it’s a table, or a tab on the front end, or something else?

---

<div class="post-metadata">

### Author: ![Collin\_Stedham](https://avatars.discourse-cdn.com/v4/letter/c/13edae/32.png) [@Collin\_Stedham](https://community.glideapps.com/u/Collin_Stedham)
#### Post date: [March 9, 2024, 1:28am UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/4 "2024-03-09T01:28:02Z")

</div>

As in a page you can view from somebody else, like a profile page that is not yours on facebook where you can see who they are following

(that’s what I figure)

---

<div class="post-metadata">

### Author: ![Joe\_Gabriele](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/joe_gabriele/32/57595_2.png) [@Joe\_Gabriele](https://community.glideapps.com/u/Joe_Gabriele)
#### Post date: [March 9, 2024, 1:48am UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/5 "2024-03-09T01:48:36Z")

</div>

Are you trying to have row owners on the User Table to protect data, but its preventing people from seeing the profile, so you also need a public profile?

You’ll need to create a separate Public Profile table where users create one through an onboarding action. This will also have a relation to the User Table, most likely using the UserID to protect the email, so each user has full control over their public profile, but public users can still see it. Your collection will be based on the Profile Profile table. You also cant use Lookups into the User Table because its all protected.

---

<div class="post-metadata">

### Author: ![Joe](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/joe/32/54373_2.png) [@Joe](https://community.glideapps.com/u/Joe)
#### Post date: [March 9, 2024, 1:59am UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/6 "2024-03-09T01:59:21Z")

</div>

yes this sounds more like it - sorry for my weak explanation. So yes, i have the main user profile with their protected data. However, when a user posts or comments on a post (or chats), i’d like a public profile that basically just lists photo, name, and follower/following information.

So it seems it would just be a new page with it’s own table (relation to their protected table for UserID ) and they would set that up through an onboarding (like let’s set up your public profile).

Do i have this correct?  
Thank you

---

<div class="post-metadata">

### Author: ![Joe\_Gabriele](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/joe_gabriele/32/57595_2.png) [@Joe\_Gabriele](https://community.glideapps.com/u/Joe_Gabriele)
#### Post date: [March 9, 2024, 2:18am UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/7 "2024-03-09T02:18:20Z")

</div>

Not sure about the chat /comments component because Ive never used but if you want people to find other people then yes youll need a separate unprotected table

---

<div class="post-metadata">

### Author: ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)
#### Post date: [March 9, 2024, 2:21am UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/8 "2024-03-09T02:21:50Z")

</div>

> [@Joe](#):
>
> So it seems it would just be a new page with it’s own table (relation to their protected table for UserID ) and they would set that up through an onboarding (like let’s set up your public profile).

> [@locked\_with\_key Secure Your Data with Row Owners and Public Profiles](https://community.glideapps.com/t/secure-your-data-with-row-owners-and-public-profiles/52139):
>
> wave Hey fellow Gliders! Are you using Row Owners and Public Profiles to secure your user data? If not, you might accidentally expose private info. Let’s fix that. In this important tutorial, I demonstrate how and why to enable Row Owners, create a Public Profiles table, and onboard new users in order to safely create a community app that doesn’t reference the User Profile table. [[Glide: Secure Your Data with Row Owners and Public Profiles] ](https://www.youtube.com/watch?v=JPgZeDSPQMw) You can also reference this article in…

---

<div class="post-metadata">

### Author: ![Joe](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/joe/32/54373_2.png) [@Joe](https://community.glideapps.com/u/Joe)
#### Post date: [March 9, 2024, 2:38am UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/9 "2024-03-09T02:38:50Z")

</div>

thank you

---

<div class="post-metadata">

### Author: ![Collin\_Stedham](https://avatars.discourse-cdn.com/v4/letter/c/13edae/32.png) [@Collin\_Stedham](https://community.glideapps.com/u/Collin_Stedham)
#### Post date: [March 9, 2024, 12:22pm UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/10 "2024-03-09T12:22:24Z")

</div>

If this is not already solved, I think you can just make a new tab with the User Profile as the data source, and simply list the people in your app. Then set up a public detail screen with all the information you mentioned. You could still keep your profile, but just set up a “everybody” page where you can view everybody.

Hope I helped?

---

<div class="post-metadata">

### Author: ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)
#### Post date: [March 9, 2024, 12:44pm UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/11 "2024-03-09T12:44:45Z")

</div>

The problem with that approach is that it is not secure.

As @Joe mentioned earlier:

> [@Joe](#):
>
> So yes, i have the main user profile with their protected data. However, when a user posts or comments on a post (or chats), i’d like a public profile that basically just lists photo, name, and follower/following information.

So he wants to make a subset of the User Profile data available, without risking exposing any sensitive personal data. The correct way to do that is to apply Row Owners to the primary Users table, and then setup a secondary Users table without Row Owners, that contains just a subset of the columns. Bob’s tutorial (the one I linked to), explains step by step how to do this.

---

<div class="post-metadata">

### Author: ![Collin\_Stedham](https://avatars.discourse-cdn.com/v4/letter/c/13edae/32.png) [@Collin\_Stedham](https://community.glideapps.com/u/Collin_Stedham)
#### Post date: [March 9, 2024, 2:01pm UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/12 "2024-03-09T14:01:53Z")

</div>

I did not do that and my profile page still works. I don’t mean one where you can edit, just one where you can search up people, view a detail screen with custom values showing who they are following (a relation) and whether they are blocked or your friend. This is all possible with Glide. Can you explain why that is not secure?

---

<div class="post-metadata">

### Author: ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)
#### Post date: [March 9, 2024, 2:25pm UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/13 "2024-03-09T14:25:55Z")

</div>

It not secure because without Row Owners applied, _all_ data in the Users table will be downloaded to each users device. Even though you may not be directly exposing the data on any screens, it will still be there, and a malicious user with sufficient motivation and skills could get at it.

> **[Security and User Data | Glide Docs](https://www.glideapps.com/docs/essentials/security-and-user-data)**
>
> Make your apps safe and secure.

---

<div class="post-metadata">

### Author: ![Collin\_Stedham](https://avatars.discourse-cdn.com/v4/letter/c/13edae/32.png) [@Collin\_Stedham](https://community.glideapps.com/u/Collin_Stedham)
#### Post date: [March 9, 2024, 5:34pm UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/14 "2024-03-09T17:34:30Z")

</div>

But what data would you protect? Email? And who would want to get at it? Oh well. I guess row owners are fine

---

<div class="post-metadata">

### Author: ![Jeff\_Hager](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jeff_hager/32/43_2.png) [@Jeff\_Hager](https://community.glideapps.com/u/Jeff_Hager)
#### Post date: [March 9, 2024, 6:11pm UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/15 "2024-03-09T18:11:47Z")

</div>

Imagine you have an app with thousands of rows of data in a user table that is not protected by Row Ownership, and that user table has private personal data for each user. Now imagine that anybody in the world has access to use your app. Every single person that uses your app now has a copy of that database, including the user table with personal data, sitting on their personal device. It’s not particularly hard to see that data.

It’s your responsibility as a developer to ensure that your users private data is secure.

---

<div class="post-metadata">

### Author: ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)
#### Post date: [March 9, 2024, 6:15pm UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/16 "2024-03-09T18:15:50Z")

</div>

It’s not me that’s wanting to protect it, it’s @joe.  
So only he can answer that question. Who knows what data is in his User Profiles table?  
Date of Birth, Marital Status, Salary, could be anything…  
The point is, any time you have sensitive/private data in a User Profiles table, then you should be using Row Owners to ensure that only those that you want to have access to that data can get at it.

---

<div class="post-metadata">

### Author: ![Collin\_Stedham](https://avatars.discourse-cdn.com/v4/letter/c/13edae/32.png) [@Collin\_Stedham](https://community.glideapps.com/u/Collin_Stedham)
#### Post date: [March 9, 2024, 9:16pm UTC](https://community.glideapps.com/t/user-profiles-for-public-viewing-purposes/71530/17 "2024-03-09T21:16:41Z")

</div>

That makes perfect sense
