【发布时间】:2013-02-21 13:32:00
【问题描述】:
下面的代码允许我通过使用查询在 sql server 中创建用户。它当前创建一个用户配置文件,但它允许用户访问服务器上的所有数据库。我只希望他们能够访问“TEST”数据库我将如何去做这个
CREATE LOGIN [SupportUser]
WITH PASSWORD=N'SupportUser',
DEFAULT_DATABASE=[master],
DEFAULT_LANGUAGE=[us_english],
CHECK_EXPIRATION=OFF,
CHECK_POLICY=OFF
GO
【问题讨论】:
-
你需要用sql命令行来做吗?如果不只是使用可以设置用户角色的管理工作室。
-
我已经在设置角色,但只希望用户访问那个数据库
-
我认为如果您希望该用户只能访问 TEST 数据库,那么 DEFAULT_DATABASE 也应该是 TEST 而不是 MASTER。
-
您的脚本创建的是登录名,而不是用户,除非您将其添加到
sysadmin角色或其他服务器角色,否则默认情况下它无法访问任何用户数据库。所以我认为您的问题实际上是“我如何授予对特定数据库的登录访问权限”?见this question。
标签: sql sql-server