Hi everyone. Im coming from the Noodl.net community, a low code platform that uses Parse as its backend.
I’m trying to build my app and I’m trying to figure out file storage. For now, I’ve set up my Classes and records structure, I even have a complex CLP and ACL structure where every user is part of a team that can only access records that belong to their team.
What I want to do now, is set up file uploads so that users can attach files to their records, either through a file field or through url references inline (I’m using a wysiwyg editor that accepts images).
What would be an easy, secure and cost effective scenario to implement this? This is what I’ve figured so far:
- Use Parse / MongoDB. Possibly expensive. Permissions are already built it so all I need to do is use the ACL.
- Connect a 3rd party service (like Google bucket) and store files there. Possibly cheaper. How would permissions work? I’ve thought of two ways:
A. The entire permission structure is duplicated through Google AIM (or another service, respectively) so that every user in Parse, is a user in the storage provider.
B. Only one access user exists. When any user requests a file, the Parse backend checks if the user is allowed to access that file through the existing ACL then retrieves a temporary url from the storage provider to the user. The url expires after an hour.
What are your thoughts? Do you have better recommendations? Does any of the above sound feasible, reasonable, performant?
Thanks and sorry for the long text!