所有版本的 SQL Server 均使用基于角色的安全,它允许您为角色、用户组而不是各个用户分配权限。 固定服务器和固定数据库角色具有分配给它们的一组固定的权限。
固定服务器角色具有一组固定的权限,并且适用于整个服务器范围。 它们专门用于管理 SQL Server,且不能更改分配给它们的权限。 可以在数据库中不存在用户帐户的情况下向固定服务器角色分配登录。
按照从最低级别的角色(bulkadmin)到最高级别的角色(sysadmin)的顺序进行描述:
vBulkadmin:这个服务器角色的成员可以运行BULKINSERT语句。这条语句允许从文本文件中将数据导入到SQLServer 2008数据库中,为需要执行大容量插入到数据库的域账户而设计。
vDbcreator:这个服务器角色的成员可以创建、更改、删除和还原任何数据库。这不仅是适合助理DBA的角色,也可能是适合开发人员的角色。
vDiskadmin:这个服务器角色用于管理磁盘文件,比如镜像数据库和添加备份设备。它适合助理DBA。
vProcessadmin:SQLServer 2008能够多任务化,也就是说可以通过执行多个进程做多个事件。例如,SQLServer 2008可以生成一个进程用于向高速缓存写数据,同时生成另一个进程用于从高速缓存中读取数据。这个角色的成员可以结束(在SQLServer 2008中称为删除)进程。
vSecurityadmin:这个服务器角色的成员将管理登录名及其属性。他们可以授权、拒绝和撤销服务器级权限。也可以授权、拒绝和撤销数据库级权限。另外,它们可以重置SQLServer 2008登录名的密码。
vServeradmin:这个服务器角色的成员可以更改服务器范围的配置选项和关闭服务器。例如SQLServer 2008可以使用多大内存或监视通过网络发送多少信息,或者关闭服务器,这个角色可以减轻管理员的一些管理负担。
vSetupadmin:为需要管理链接服务器和控制启动的存储过程的用户而设计。这个角色的成员能添加到setupadmin,能增加、删除和配置链接服务器,并能控制启动过程。
vSysadmin:这个服务器角色的成员有权在SQLServer 2008中执行任何任务。
vPublic:有两大特点,第一,初始状态时没有权限;第二,所有的数据库用户都是它的成员。
固定数据库角色具有一组预定义的权限,这些权限旨在允许您轻松管理权限组。 db_owner 角色的成员可对数据库执行所有配置和维护活动。
微软提供了9个内置的角色,以便于在数据库级别授予用户特殊的权限集合
vdb_owner:该角色的用户可以在数据库中执行任何操作。
vdb_accessadmin:该角色的成员可以从数据库中增加或者删除用户。
vdb_backupopperator:该角色的成员允许备份数据库。
vdb_datareader:该角色的成员允许从任何表读取任何数据。
vdb_datawriter:该角色的成员允许往任何表写入数据。
vdb_ddladmin:该角色的成员允许在数据库中增加、修改或者删除任何对象(即可以执行任何DDL语句)。