User Profiles for public viewing purposes

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

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

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?

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)

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.

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

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

thank you

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?

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

As @Joe mentioned earlier:

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.

1 Like

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?

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.

1 Like

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

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.

2 Likes

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.

2 Likes

That makes perfect sense