2013-04-25 98 views
1

为特定数据库创建只读用户的最佳做法是什么?创建具有只读权限的SQL用户的最佳方法?

我创建了一个新用户并授予db_datareader角色,但是,该用户仍然可以访问master db和其他系统数据库。这可以吗?还是应该拒绝某些系统表/数据库的访问,以使其更安全?

谢谢。


好了,如果我创建一个新用户,他会不会有更多的默认权限我必须否认? 如果我做 〜创建登录 〜用于登录创建用户.. 〜许可执行用户

将用户只有执行权限,否则他将有更多的权限以及活动数据库?

回答

0

嗨我相信用户也可以在对象浏览器中查看其他数据库。

CREATE LOGIN me with password = 'me', check_policy = off 

sp_changedbowner 'me' 
GO 

USE MASTER 
GO 


DENY VIEW ANY DATABASE TO me 
GO 
0

那么你可以使用denywrite作为一个角色选项。用户必须“看见”主人,因为主人包含他将永久连接到的数据库列表,但他只会在那里拥有客人的私有物。然后您可以拒绝访问其他特定数据库。 AFAIK他不需要将tempdb或msdb视为其访问这些数据库的SQL引擎

相关问题