USER ID's for Security Filters

Hello,

I have recently started to use the app and I would like to know about the User Id’s. I am trying to create security filters and the only dynamic way to filter data according to users, as I have seen so far, is the user email (USEREMAIL() function). Is there another way to go about this? Since it is possible for users to change their email address, I would prefer to use a User Id instead of their email. I have seen that User Id’s already exist in the Audit Log, but I haven’t found the origin of this data, meaning where it lives and if I can leverage it for security filters instead of the user emails. Could it be available to me? Or are the User Id’s only for the Audit Log? Please let me know.

Best wishes,
Aristotelis

Solved Solved
0 9 314
1 ACCEPTED SOLUTION

The only metric you have is UserEmail() which is the email they login in with. What you could do is create a user table which has both [UserID] and [Login Email]. Then in your main data table also have a column called [UserID] where the App formula is ANY(Select(UserTable[UserID].[Login Email]=USerEmail())). So providing you keep this user table up to date your main data records will all have the correct user ID

View solution in original post

9 REPLIES 9

The only metric you have is UserEmail() which is the email they login in with. What you could do is create a user table which has both [UserID] and [Login Email]. Then in your main data table also have a column called [UserID] where the App formula is ANY(Select(UserTable[UserID].[Login Email]=USerEmail())). So providing you keep this user table up to date your main data records will all have the correct user ID

Is there a solution that different users through one login email address only see their records by entering an ID code (for example the uniqueID() that is generated and given to user).
At each login they have to do this again so that one user does not get to see the records of another because it is business sensitive information. Even if two users are logged in at the same time.

in general yes it's possible, but if someone share that code, it ruins everything.. which means it's not secured way to do.

Hi @AleksiAlkio the app exists of just one table with four columns.

Column A: TableID
Column B: RelationID
Column C: Questions per RelationID
Column  D : Answer
The filter is the RelationID

The masterAPP is linked to this table to make the connection with the relation. So no one can see who the relation could be. 
I understand that email is safer. But for one time per year to do this questionair, it would be a costly solution. 

Would it be better to create the same with a Google Form?

I know G-Forms, thought about it. Not all users have the same question. Works great when all questions are the same. Or I don't know how to do it of course :).
Everey user have a different set of questions and it would be great if it is integrated in Appsheet. Now the accountance agency works with an Excel and have to fill in them selves.

How many users? How many different questions?

Thank you for the reply. I have completed the steps that you suggested, and the formula only works when I replace the “.” with a comma (e.g. [UserID],[LoginEmail]). I hope that doesn’t change anything. Now, is it possible to filter the master data table with the [UserID] that I have created? I am guessing that the formula for the security filter would have to include the USEREMAIL in junction with the UserID. Any suggestions on how I would go about that?

Haha, sorry yes a simply typo

Yes the security filter equation could be something like - [UserID]=UserEmail()

Top Labels in this Space