Is anything coming to make database security more robust, and safe?

I have a multi-tenant SaaS application I've been building, and I made a post 10 months ago about the challenges I was facing securing data between different tenants inside an environment.

https://community.xano.com/feature-requests/post/multi-tenant-security-Wk4m7dXnN3wqizV

These problems really boiled down to a couple of different areas:

  1. Row Level Security

    1. When a tenant authenticates to an application, they are only granted access to rows with their tenant_id, and nothing else. Right now this is only achievable for Read operations by doing a Query All Records and matching the tenant_id with the auth token set tenant_id I'm also passing.

      For Write, Edit, Delete this is much more complex. This requires that you first verify that the data being edited is data from that tenant, then going through a precondition that basically stops the user or allows them to pass. Moving to a model where the row itself was only ever part of the tenant could help tremendously.

  2. Role Based Access

    1. My application has different roles for user, editor, administrator, etc. It would be nice if there was an RBAC engine in Xano that would allow me create the different roles within an application, as well as be able to pass specific data into those roles, such as this user is marked as an editor for a record they don't own, but is allowed to edit. Right now, once again very manual.

I actually tried implementing this manually, but got burned out by the amount of new actions that needed to be added, the rigidity of the solution, and just the general fact that it was so human error prone, if I forget one little thing data can leak or be modified.

I'm checking back in after 10 months to see if there is any solid roadmap to solve this problem, I firmly believe this is probably one of Xano's biggest limitations and something that must be addressed. It would be so easy for a bad actor to take advantage of someones mistakes.

If you were to compare this in how other solutions are solving the problem, Firebase does a nice job of allowing you to write in these rules at a Global level, that translates down into the tenant.

Is there anything coming or has anyone truly figured this out?

Security
2
2 replies