SQL Server - 新用户可以访问主数据库

时间:2016-04-29 00:41:52

标签: sql-server azure-sql-database

我在Azure中创建了一个带有数据库的新SQL服务器,在使用admin帐户登录后,我添加了一个我只想访问一个数据库的新用户。

在SSMS中,我右键单击mynewdatabase数据库并选择了新查询。

我执行了

CREATE USER mynewuser WITH PASSWORD ='good password here';
ALTER ROLE db_owner ADD MEMBER mynewuser ;

现在以mynewuser身份登录后,我仍然可以看到master数据库。

问题是如何限制mynewuser仅访问mynewdatabase

我确信这是基本的。

1 个答案:

答案 0 :(得分:2)

在SQL Server中,包括Azure SQL DB,所有用户都可以在sys.databases中查看所有系统数据库。这与能够连接到它们或在其中运行查询不同。这并未透露任何敏感信息,因为这些是系统数据库,无论您是否看到它们列出,您都会知道它们在那里。请参阅https://msdn.microsoft.com/en-us/library/ms178534.aspx#Anchor_0

根据您描述的步骤,您创建了一个无法连接到master数据库或在Azure SQL DB中运行查询的包含用户。