Assume that we have a database on MS SQL Server 2008 with 20-30 tables at the core of our distributed system. Permissions to read and write these tables can vary for each layer of our system.
For example, we have three types of clients, that could connect to our database directly or via some intermediate layer. To eliminate the possibility of incorrect operations we have to correctly set the permissions for each type of client.
The obvious solution is to separate our tables to different SQL Server schemas and set permissions to access objects in schema as a whole. And now we must decide how justified this solution on relatively small amount of tables and how it will impact on performance (it seeems that very often we must to join tables from different schemas).
Assume that we have a database on MS SQL Server 2008 with 20-30 tables
Share
Joining tables from different schemas will not affect performance.
But, actually, it is better to grant permissions on procedures not on tables.