在SQL 2008服务器中创建自定义SQL Server角色
我想添加新的自定义SQL Server角色并将新用户分别分配给这些适当的角色。我试图找到如何创建角色,但我无法找到添加的地方。你能指导我如何达到我的要求吗?在SQL 2008服务器中创建自定义SQL Server角色
您在2008版本中无法完成此操作 - 这是2011/2012版SQL Server 2011(a.k.a.“Denali”)中的一项新功能。
看到一些资源:
您只需在SQL Server 2011之前授予您想要的登录权限而不是角色。当然,这并不理想,但它可行。
我们使用它来使应用程序团队能够看到正在发生的事情而不会影响DBA。
例如,
CREATE LOGIN [MyDOmain\FolkITrustGroup] FROM WINDOWS;
GO
GRANT VIEW SERVER STATE TO [MyDOmain\FolkITrustGroup]
GRANT VIEW ANY DEFINITION TO [MyDOmain\FolkITrustGroup]
GO
编辑:这实现你的要求,而无需使用服务器角色,其目前还不存在......
嗯,我没有安装SQL服务器所以我现在无法检查。但我的SQL的知识告诉我:
创建角色:
create role <rolename>;
授予的privilages:
grant <privilages> on <relation> to <rolename>;
撤销的privilages:
revoke <priv> on <rel> from <rolename>;
授予角色的用户:
grant <rolename> to user;
您还可以创建它的层次结构: 例如>
create role supervisor;
grant select, insert on db.table to supervisor;
create role manager;
grant supervisor to manager;
grant manager to John;
这是标准SQL的方式。它在当前版本的某些DBMS中尚不可用。不确定SQL服务器。
最后一种说法是错误的。它应该是:'EXEC sp_addrolemember'manager','John'' – mpiliszcz 2015-05-21 11:01:34
****A. Creating a server role that is owned by a login****
****The following example creates the server role buyers that is owned by login BenMiller.****
USE master;
CREATE SERVER ROLE buyers AUTHORIZATION BenMiller;
GO
****B. Creating a server role that is owned by a fixed server role****
****The following example creates the server role auditors that is owned the securityadmin fixed server role.****
USE master;
CREATE SERVER ROLE auditors AUTHORIZATION securityadmin;
GO
您的意思是在数据库中还是在服务器级别? SPE109有一个很好的观点,我和marc_s可能会误解 – gbn 2011-06-02 10:23:53