Sql Server 服务器级别角色 和 数据库级别的角色

2010-05-06T11:39:08

为便于管理数据库中的权限,SQL Server 提供了若干“角色”

 

,这些角色是用于分组其他主体的安全主体。它们类似于 Microsoft Windows 操作系统中的。数据库级角色的权限作用域为数据库范围。
服务器级角色也称为“固定服务器角色”

 

,因为您不能创建新的服务器级角色。服务器级角色的权限作用域为服务器范围。
您可以向服务器级角色中添加 SQL Server 登录名、Windows 帐户和 Windows 组。固定服务器角色的每个成员都可以向其所属角色添加其他登录名。
SQL Server 中有两种类型的数据库级角色:数据库中预定义的“固定数据库角色”

和您可以创建的“灵活数据库角色”

服务器级角色名称 说明
sysadmin sysadmin 固定服务器角色的成员可以在服务器上执行任何活动。默认情况下,Windows BUILTIN\Administrators 组(本地管理员组)的所有成员都是 sysadmin 固定服务器角色的成员。
serveradmin serveradmin 固定服务器角色的成员可以更改服务器范围的配置选项和关闭服务器。
securityadmin securityadmin 固定服务器角色的成员可以管理登录名及其属性。他们可以 GRANT、DENY 和 REVOKE 服务器级别的权限。他们还可以 GRANT、DENY 和 REVOKE 数据库级别的权限。此外,他们还可以重置 SQL Server 登录名的密码。
processadmin processadmin 固定服务器角色的成员可以终止在SQL Server 实例中运行的进程。
setupadmin setupadmin 固定服务器角色的成员可以添加和删除链接服务器。
bulkadmin bulkadmin 固定服务器角色的成员可以运行 BULK INSERT 语句。
diskadmin diskadmin 固定服务器角色用于管理磁盘文件。
dbcreator dbcreator 固定服务器角色的成员可以创建、更改、删除和还原任何数据库。

 

数据库级别的角色名称 说明
db_owner db_owner 固定数据库角色的成员可以执行数据库的所有配置和维护活动,还可以删除数据库。
db_securityadmin db_securityadmin 固定数据库角色的成员可以修改角色成员身份和管理权限。向此角色中添加主体可能会导致意外的权限升级。
db_accessadmin db_accessadmin 固定数据库角色的成员可以为 Windows 登录名、Windows 组和 SQL Server 登录名添加或删除数据库访问权限。
db_backupoperator db_backupoperator 固定数据库角色的成员可以备份数据库。
db_ddladmin db_ddladmin 固定数据库角色的成员可以在数据库中运行任何数据定义语言 (DDL) 命令。
db_datawriter db_datawriter 固定数据库角色的成员可以在所有用户表中添加、删除或更改数据。
db_datareader db_datareader 固定数据库角色的成员可以从所有用户表中读取所有数据。
db_denydatawriter db_denydatawriter 固定数据库角色的成员不能添加、修改或删除数据库内用户表中的任何数据。
db_denydatareader db_denydatareader 固定数据库角色的成员不能读取数据库内用户表中的任何数据。

还有 public 数据库角色

每个数据库用户都属于 public 数据库角色。如果未向某个用户授予或拒绝对安全对象的特定权限时,该用户将继承授予该对象的 public 角色的权限。

以上内容来自MSDN SQL Server 2008 联机丛书~

当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »
因本文不是用Markdown格式的编辑器书写的,转换的页面可能不符合MIP标准。