It says a lot about the security of their api and development culture that they are even struggling with something like this. This should be caught in the first architecture review session.
It says a lot about the security of their api and development culture that they are even struggling with something like this. This should be caught in the first architecture review session.
I agree in general that you need to enforce things at the storage layer.
Would you have separate SQL credentials for each user, and configure SQL for each credential to have access to certain WHERE queries, or?
To simplify a use-case let's say I have "users" table and "tasks" table, where there's user_id in "tasks". Would I have separate sql credentials where they are configured in sql layer to have access to only rows where user_id corresponds to this certain credential? But even then how are credentials mapped to userId, as bug in application could easily cause retrieving false credentials?
Other way I can think of is to just have completely separate databases for each user, but let's in this case assume we must often do work with a mix of different users data.