Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 SQL Server 2005 Forums
 SQL Server Administration (2005)
 public role

Author  Topic 

erictatmanumit
Starting Member

2 Posts

Posted - 2010-05-20 : 10:55:14
I have a system I am trying to secure. The users access it using msquery. I have set up a new role and added all of the database objects to the role and then given access to the views I want them to see.

However - msquery allows the user to list objects for all users - this gives the sys and INFORMATION_SCHEMA objects.

Is it safe for me to add the user group to the master database and then deny select on these - or is this going to stop the users functioning?

Any suggestions - in reality I just want to grant specific users specific views and nothing else - there has to be a better way!

namman
Constraint Violating Yak Guru

285 Posts

Posted - 2010-05-20 : 20:43:58
in reality I just want to grant specific users specific views and nothing else

- create user(s) with login is public role, nothing else.
- create view(s) you want user(s) to see the data.
- create a role, then add the user(s) in this role, then in Securables, add the view(s) in this role. On permission, check Grant in Select.

You are done!

When the user(s) login, they only can get data via the view(s) you create for them, but nothing else.

Go to Top of Page

erictatmanumit
Starting Member

2 Posts

Posted - 2010-05-21 : 02:54:52
So I thought, but - The public views of sys and INFORMATION_SCHEMA also appear in the MSQUERY drop down - The only way to get rid of them appears to be to deny select on them for the user (group) This is tedious and creates a big maintenance job (These can only be hidden by changing the permissions in the master database)

Go to Top of Page
   

- Advertisement -