我以前做过这个,但不是通过脚本。我将在SQL Server(SQL身份验证)中创建一个新用户,并将用户映射到数据库,并使用SQL脚本将用户的角色分配给该数据库。
我该怎么做?
答案 0 :(得分:8)
尝试:
CREATE USER [Username] FOR LOGIN [Domain\Username]
EXEC sp_addrolemember N'DatabaseRole', N'Username'
显然将用户名,域\用户名和数据库角色更改为您希望授予其权限的用户名和访问级别,例如“db_datareader”
答案 1 :(得分:4)
以上解决方案适合我。但是,如果用户名在该数据库中尚未作为USER存在,则该用户名将不会完全映射到数据库角色。
在这种情况下,我首先添加用户:
USE databasename
CREATE USER [DOMAIN\svce_name] FOR LOGIN [DOMAIN\svce_name] WITH DEFAULT_SCHEMA=[dbo]
GO
然后我添加角色:
USE databasename
EXEC sp_addrolemember N'db_ssisoperator', N'DOMAIN\svce_name'
GO