当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 精华推荐:SQL Server的用户及权限

MSSQL
深入介绍:SQL Server变更管理工具
SQL Server日志文件总结及充满处理方式
sql查询like操作数剖析
Windows 2003不太喜欢SQL Server2000
教您 SQL SERVER 2005 同步复制技术
深入浅出SQL教程之子查询语句
简单谈基于SQL SERVER 分页存储过程的演进
深入浅出SQL教程之SELECT语句中的表连接
安装SQL Server 2000的错误及解决
为增强安全性 SQL Server加密备份
在SQL Server中为安全依从性记录日志
深入浅出SQL系列教程之基本SELECT命令
SQL Sever中有关DATALENGTH的用法
SQL Server数据库性能优化技术
SQL Server基本函数详细介绍
SQL Server中数据仓库的构建与分析
sql2005的xml字段类型在.net中的应用
SQL注入奇致胜 Union查询轻松看电影
SQL Server 2005与DB2 8.2对比分析
SQL Server 连接中四种最常见错误

MSSQL 中的 精华推荐:SQL Server的用户及权限


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 50 ::
收藏到网摘: n/a

Sybase中的用户分为两种:SQL服务器用户(登录帐号)和数据库用户。 安装完SQL服务器后,系统自动建立一个SQL服务器用户sa,口令为空,即系统管理员,他对整个系统有操作权,其他用户均由系统管理员建立。
在SQL Server中有三种特殊的用户:系统管理员、用户数据库所有者(建立相应数据库的数据库用户)DBO、一般用户。系统管理员对整个系统有操作权;用户数据库所有者对他所建立的数据库具有全部操作权利;一般用户对给定的数据库只有被授权的操作权限。
数据库用户一般可分为用户组,任一数据库在建立后即被赋予一个用户组public。

1、建立SQL服务器用户名(登录帐号)

作为一个用户,为了使用SQL Server,他必须在SQL Server上有一个SQL服务器用户名(登录帐号)。这个帐号是系统管理员通过sp_addlogin来增加的。
sp_addlogin 登录名,口令,库名,语言,全名
例:建立用户zhang, 口令为zhangling(最低六位),全名为Zhang ling
1> sp_addlogin zhang,zhangling,null,null,Zhang ling
2> go
3> select * from syslogins
4> go

2、增加数据库用户名

同样,为了使用SQL Server上的数据库,他必须在数据库中有一个用户名,这个用户名是数据库所有者通过sp_adduser来增加的。数据库用户名不必和用户帐户一样,而且在不同的数据库中用户名可以不同。多个用户可以有相同的SQL Server帐户。同样,多个SQL Server帐户可以有相同的数据库名。
sp_adduser 登录名,别名,组名
登录名为用户的SQL服务器登录名;别名为用户在数据库中的用户名;组名为用户所属的数据库用户组。
例:用户zhang增加为tele114的用户,别名为zhang1,属于用户组china
1>sp_addgroup china
2>go
1>sp_adduser zhang,zhang1,china
2>go
1> sp_helpuser
2> go
*例:删除别名zhang1,用户组china,登录名zhang
1> use tele114
2> go
3> sp_dropuser zhang1
4> go
5> sp_helpuser
6> go
1>sp_dropgroup china
2>go
1> sp_helpgroup
2> go
3> use master
4> go
5> sp_droplogin zhang
6> go
7> select * from syslogins
8> go

3、数据库操作授权

grant 命令序列 to 用户名
A. 系统管理员可以授予其他用户CREATE DATABASE的权限,使其他用户可以成为数据库所有者。
B. 数据库所有者在他所拥有的数据库中,可以授予其他用户的权限有:
l CREATE TABLE ------------------- 建表
lCREATE DEFAULT ------------------ 建缺省
lCREATE RULE ------------------- 建规则
lCREATE PROCedure ------------------ 建存储过程
lCREATE VIEW ------------------- 建视图
lDUMP DATABASE ------------------- 备份数据库
lDUMP TRANsaction ------------------ 备份日志
C. 数据库对象所有者可以授予其他用户的操作权限有:
l SELECT
l UPDATE
l INSERT
l EXECute
l DELETE
l REFERENCE
例:授予zhang1在数据库tele114上建表,建视图,建存储过程;对表students有select,reference权;对name,native字段有update权。
1> use tele114
2> go
3> grant creat table,create procedure ,create view to zhang1
4> go
5> grant select,reference on students to zhang1 with grant option 6> go
7> grant update on students(name,native) to zhang1
8> go
9> sp_helprotect
10> go