在学习sql Server 2005 过程中,对于sql 的验证方式不太理解,一会儿登录名一会儿又用户名的。还有,很多角色什么服务器的数据库的等等。都不太理解,还容易混淆,后来查询了MSDN和相关的文档,总结如下。借此,加深理解,若能为读者提供些帮助,那就满心欢喜了。

1.             Sql Server 2005 的登录方式

1)             windows身份验证:组用户登录,域用户登录,本地账户登录

2)             sql 身份验证 登录名+密码

2.             Sql Server 安全管理

1)             Sql Server

主要是固定的服务器角色组成,登录账户成为相应的服务器角色成员后,便可以对sql Server行使相应权限,如登录,创建数据库等。

固定服务器角色成员及简要描述如下表1

2)             数据库级

主要有固定数据库角色组成,另外还有用户自定义角色,应用程序角色。数据库用户成为相应的数据库角色等成员后,便可以操作相应的数据库。

固定服务器角色的成员及简要描述如下表2

 

表格 1

固定服务器角色

描述

sysadmin

执行任何活动

dbcreator

可以创建、更改数据库

serveradmin

可以更改服务器范围的配置选项和关闭服务器

securityadmin

管理和审核登录帐户

processadmin

可以终止 SQL Server 实例中运行的进程

setupadmin

配置复制和链接服务器

diskadmin

用于管理磁盘文件

bulkadmin

可以运行 BULK INSERT 语句

 

表格 2

固定数据库角色

描述

db_owner

拥有数据库的所有许可

db_securityadmin

能建立架构、更改角色

db_accessadmin

能添加或删除用户、组或角色

db_backupoperator

能备份数据库

db_datareader

能从数据库表中读数据

db_datawriter

能修改数据库表中的数据

db_ddladmin

能添加、修改或删除数据库对象

db_denydatareader

不能从数据库表中读数据

db_denydatawriter

不修改数据库表中的数据

public

维护默认的权限,默认拥有

 

说明:

1.登陆帐户(windows 验证或sql验证)用于登录sql Server管理器,而数据库用户用于操作数据库。

2数据库用户dbodbo(隶属于db_owner数据库角色)是数据库的所有者,对该数据库具有所有权限;具有固定服务器角色sysadmin的成员都自动映射到所有数据库的dbo用户,即可以行使dbo的权利。所以,以sysadmin角色成员(如sa)登录sql Server 时对任何数据库都有所有权限。

3数据库用户的对该数据库所具有的权限由该帐户所属的数据库角色决定。