Permissions Required to View a List of Tables in Management Studio

I searched for SO for an existing question, but could not find it.

I install a read-only database role for multiple databases in our server farm. The following is an example of permissions for a single table:

GRANT SELECT ON [dbo].[Table] TO [ReadOnly]
GRANT VIEW DEFINITION ON [dbo].[Table] TO [ReadOnly]
DENY ALTER ON [dbo].[Table] TO [ReadOnly]
DENY CONTROL ON [dbo].[Table] TO [ReadOnly]
DENY DELETE ON [dbo].[Table] TO [ReadOnly]
DENY INSERT ON [dbo].[Table] TO [ReadOnly]
DENY REFERENCES ON [dbo].[Table] TO [ReadOnly]
DENY TAKE OWNERSHIP ON [dbo].[Table] TO [ReadOnly]
DENY UPDATE ON [dbo].[Table] TO [ReadOnly]

This works as intended for SELECT permissions ... I can ONLY use SELECT data that is exact what I want.

However, I do not see the list of tables in the Tables tab for the specified database in Management Studio. My goal with this user is to provide users unfamiliar with SQL with a username that they can use to pull data and start experimenting with SQL. These users have experience with SAS, a statistical processing language, so they have some experience with code, but not so much specifically in SQL.

Which of these permissions will the list of tables display in Management Studio?

+3
source share
2 answers

- , , DENY (DENY GRANT). GRANT , ( REVOKE, DENY, GRANT). DENY REVOKE script, / SSMS.

+4

, , :

DB_DataReader - , . , - .

0

Source: https://habr.com/ru/post/1722472/


All Articles