SQL Server中不同用戶(hù)的權(quán)限
在SQL Server數(shù)據(jù)庫(kù)中,用戶(hù)分為不同的種類(lèi),不同種類(lèi)的用戶(hù)所擁有的操作權(quán)限也是不一樣的,下面就將為您介紹SQL Server中不同用戶(hù)的操作權(quán)限,供您參考。
se中的用戶(hù)分為兩種:SQL服務(wù)器用戶(hù)(登錄帳號(hào))和數(shù)據(jù)庫(kù)用戶(hù)。 安裝完SQL服務(wù)器后,系統(tǒng)自動(dòng)建立一個(gè)SQL服務(wù)器用戶(hù)sa,口令為空,即系統(tǒng)管理員,他對(duì)整個(gè)系統(tǒng)有操作權(quán),其他用戶(hù)均由系統(tǒng)管理員建立。
在SQL Server中有三種特殊的用戶(hù):系統(tǒng)管理員、用戶(hù)數(shù)據(jù)庫(kù)所有者(建立相應(yīng)數(shù)據(jù)庫(kù)的數(shù)據(jù)庫(kù)用戶(hù))DBO、一般用戶(hù)。系統(tǒng)管理員對(duì)整個(gè)系統(tǒng)有操作權(quán);用戶(hù)數(shù)據(jù)庫(kù)所有者對(duì)他所建立的數(shù)據(jù)庫(kù)具有全部操作權(quán)利;一般用戶(hù)對(duì)給定的數(shù)據(jù)庫(kù)只有被授權(quán)的操作權(quán)限。
數(shù)據(jù)庫(kù)用戶(hù)一般可分為用戶(hù)組,任一數(shù)據(jù)庫(kù)在建立后即被賦予一個(gè)用戶(hù)組public。
1、建立SQL服務(wù)器用戶(hù)名(登錄帳號(hào))
作為一個(gè)用戶(hù),為了使用SQL Server,他必須在SQL Server上有一個(gè)SQL服務(wù)器用戶(hù)名(登錄帳號(hào))。這個(gè)帳號(hào)是系統(tǒng)管理員通過(guò)sp_addlogin來(lái)增加的。
sp_addlogin 登錄名,口令,庫(kù)名,語(yǔ)言,全名
例:建立用戶(hù)zhang, 口令為zhangling(***六位),全名為Zhang ling
1> sp_addlogin zhang,zhangling,null,null,Zhang ling
2> go
3> select * from syslogins
4> go#p#
2、增加數(shù)據(jù)庫(kù)用戶(hù)名
同樣,為了使用SQL Server上的數(shù)據(jù)庫(kù),他必須在數(shù)據(jù)庫(kù)中有一個(gè)用戶(hù)名,這個(gè)用戶(hù)名是數(shù)據(jù)庫(kù)所有者通過(guò)sp_adduser來(lái)增加的。數(shù)據(jù)庫(kù)用戶(hù)名不必和用戶(hù)帳戶(hù)一樣,而且在不同的數(shù)據(jù)庫(kù)中用戶(hù)名可以不同。多個(gè)用戶(hù)可以有相同的SQL Server帳戶(hù)。同樣,多個(gè)SQL Server帳戶(hù)可以有相同的數(shù)據(jù)庫(kù)名。
sp_adduser 登錄名,別名,組名
登錄名為用戶(hù)的SQL服務(wù)器登錄名;別名為用戶(hù)在數(shù)據(jù)庫(kù)中的用戶(hù)名;組名為用戶(hù)所屬的數(shù)據(jù)庫(kù)用戶(hù)組。
例:用戶(hù)zhang增加為tele114的用戶(hù),別名為zhang1,屬于用戶(hù)組china
1>sp_addgroup china
2>go
1>sp_adduser zhang,zhang1,china
2>go
1> sp_helpuser #p#
2> go
*例:刪除別名zhang1,用戶(hù)組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 #p#
3、數(shù)據(jù)庫(kù)操作授權(quán)
grant 命令序列 to 用戶(hù)名
A. 系統(tǒng)管理員可以授予其他用戶(hù)CREATE DATABASE的權(quán)限,使其他用戶(hù)可以成為數(shù)據(jù)庫(kù)所有者。
B. 數(shù)據(jù)庫(kù)所有者在他所擁有的數(shù)據(jù)庫(kù)中,可以授予其他用戶(hù)的權(quán)限有:
l CREATE TABLE ------------------- 建表
lCREATE DEFAULT ------------------ 建缺省
lCREATE RULE ------------------- 建規(guī)則
lCREATE PROCedure ------------------ 建存儲(chǔ)過(guò)程
lCREATE VIEW ------------------- 建視圖
lDUMP DATABASE ------------------- 備份數(shù)據(jù)庫(kù)
lDUMP TRANsaction ------------------ 備份日志
C. 數(shù)據(jù)庫(kù)對(duì)象所有者可以授予其他用戶(hù)的操作權(quán)限有:
l SELECT
l UPDATE
l INSERT
l EXECute
l DELETE
l REFERENCE
例:授予zhang1在數(shù)據(jù)庫(kù)tele114上建表,建視圖,建存儲(chǔ)過(guò)程;對(duì)表students有select,reference權(quán);對(duì)name,native字段有update權(quán)。
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
【編輯推薦】
SQL Server中各類(lèi)型的鎖(LOCK)
SQL server服務(wù)器版在XP系統(tǒng)下的安裝方法