I am trying to emulate row level security on a webapp I am developing using MySQL.
Using this method: Creating a database with the the required tables where the data pertaining to all the users will be stored with proper indexing of columns of the tables.
Creating mysql 'views' to specific users based on the user-id.
To achieve row level security I will also have to create mysql account for every user to and set 'grant' permissions on the views.
For the web interface a PHP based MVC framework will be used.
But, according to my research:
1] Having separate mysql account per user "make the webapp less secure".
2] Having separate mysql account per user "increases the disk I/O".
Questions:
1] How does creating mysql user per webapp user make the webapp less secure?
2] Does the disk I/O increase considerably?
3] Is there a better way to implement row-level-security in MySQL?
4] What are the pros/cons of implementing row-level-security by the above method?
Why am I looking at Row Level Security?
I need row level security because there are rows which will be shared between multiple users & have 1 or 2 owners to it. Only these owners can delete/modify them.
I am not able to add tags like 'row-level-security' 'disk-io' as my reputation points are less. If anyone else can, please do.