1. 程式人生 > >SQL Server2008資料庫使用者管理 (第三部分)

SQL Server2008資料庫使用者管理 (第三部分)

3.1建立SQL Server資料庫登入名

開啟資料庫管理器->安全性->登入名->右鍵選擇新建登入名

1)Windows身份驗證

選中Windows身份驗證,點選搜尋,在下面的提示框中輸入當前計算機的使用者名稱(可在控制面板->使用者賬戶->使用者賬戶->管理使用者賬戶中查詢),然後點選檢查名稱,輸入無誤後,點選確定

在該視窗同樣點選確定(預設資料庫為master)

然後重新整理物件資源管理器,在安全性->登入名中可查詢到新建的登入名LIU-GANG\CSLCAdmin

最後斷開資料庫。

登出當前使用者後以上面新建的登入名登入計算機,再次連線資料庫,以Windows身份驗證方式登入,發現數據庫預設的使用者名稱變為LIU-GANG\CSLCAdmin,點選連線,連線資料庫成功。

2)SQL Server身份驗證

如下操作:

登入名只能登入資料庫資料庫,而不能使用資料庫。

3.2建立資料庫使用者

登入名:連線到SQL Server伺服器

資料庫使用者名稱:

1)SQL Server的使用者

2)每個用來登入SQL Server的登入名都是一個使用者

3)同一個資料庫可以擁有多個使用者,同一個使用者也可以訪問多個數據庫

3.2.1登入名中新建使用者

首先使用sa賬戶登入資料庫

選中對應的資料庫E_Market,選中安全性->使用者->右鍵新建使用者

下面的使用者名稱可以與登入資料庫的登入名相同,也可以不同。注意登入名選擇上面新建的PbUser,然後點選確定

接著斷開資料庫的連線。使用PbUser登入名登入。發現可以正常訪問E_Market資料庫

3.2.2新建登入名時對映到對應的使用者

首先使用sa登入資料庫

新建登入名:Admins

接著選擇使用者對映:選擇可以對映到的資料庫,然後點選確定

重新整理資料庫E_Market,安全性->使用者可檢視到新建的Admins使用者

3.3為資料庫使用者賦予許可權(檢視下)

為使用者sysAdmin賦予檢視、新增的許可權

 

首先使用sa使用者連線資料庫

選中資料庫E_Market->安全性->使用者->選中sysAdmin->郵件點選屬性

->點選安全物件->點選搜尋

3.3.1選擇特定物件

選中特定物件確定->點選物件型別->選中表(表示對資料庫中的表進行操作)->確定

點選瀏覽,如下圖(當前環境沒有表,所以沒有顯示),如果有具體的表,選中點選確定,即會將表列入到如下的安全物件中

3.3.2選擇特定型別所有物件

再選擇表,則將會列出該資料庫內所有的表

3.3.3選擇屬於該架構的所有物件

在選擇sys,則會列出所有的資料物件,包括檢視、表、儲存過程等,選中後可在下面為其賦予對應的許可權

3.3.4使用該使用者登入資料庫管理器

驗證上面設定的正確性,檢視使用者操作表的許可權

3.4 為資料庫使用者賦予許可權(sql語句)

3.4.1建立登入名

CREATE LOGIN <登入名> WITH PASSWORD = <’密碼’>

--建立登入名

USE master

GO

--建立PbMaster登入名,密碼為@abcd

CREATE LOGIN PbMaster WITH PASSWORD = '[email protected]'

GO

3.4.2建立資料庫使用者

CREATE USER 資料庫使用者名稱 FOR LOGIN 登入名

--建立資料庫使用者

USE E_Market

GO

CREATE USER MasterDBUser FOR LOGIN PbMaster

GO

3.4.3為資料庫使用者賦予許可權

GRANT 操作許可權1, 操作許可權2… ON 表名 TO 使用者名稱

 

USE E_Market

GO

GRANT SELECT, INSERT, UPDATE ON Userinfo To MasterDBUser

GO

3.4.4從使用者回收許可權

--MasterDBUser回收更新的操作許可權

USE E_Market

GO

 

REVOKE UPDATE ON UserInfo TO MasterDBUser

GO

3.4.5檢視某使用者所擁有的許可權

選中對應的資料庫->安全性->使用者->選中某使用者->右鍵屬性->選擇安全物件->右側上方是可操作的物件,下方是對應的操作許可權

3.5伺服器角色

角色:事先定義好的一組許可權

3.5.1伺服器角色

資料庫伺服器方面的控制權限

例如建立、修改、刪除資料庫,管理磁碟檔案,新增或刪除資料庫連線等等

伺服器級別的物件,只能包含登入名

 

角色名

描述

bulkadmin

執行bulk語句,該語句可將文字檔案內的資料匯入SQL Server2008中

dbcreator

建立、更改、刪除和還原任何資料庫

diskadmin

管理磁碟檔案

processadmin

管理sql server中執行的程序

securityadmin

管理和稽核登入賬戶

serveradmin

設定伺服器範圍的配置

setupadmin

可以新增和刪除連線伺服器,並可以執行某些系統儲存過程

sysadmin

可以在伺服器引擎中執行任何活動

public

兩大特點:一、初始狀態時沒有許可權。二、所有的資料庫使用者都是它的成員

下面以dbcreator伺服器角色為例說明:

使用PbUser登入名登入資料庫,建立資料庫提示錯誤資訊如下:

說明PbUser登入名沒有建立資料庫的許可權,使用sa使用者登入資料庫,然後點選安全性->登入名->PbUser->右鍵屬性->伺服器角色->勾選dbcreator複選框(Public複選框預設被選中)->點選確定

再次使用PbUser連線資料庫管理器,然後新建資料庫,成功

3.6資料庫使用者角色

資料庫中資料的控制權限

資料庫級別的一個物件,只能包含資料庫使用者名稱

例如可以訪問哪個資料庫,可以訪問哪個資料庫中的那些資料表,哪些檢視,哪些儲存過程等等

對哪些資料表執行哪些操作,比如是插入操作還是更新操作

 

固定資料庫角色:

一組sql server預定義的資料庫角色

具有資料庫級別的管理許可權

角色名

描述

db_owner

執行所有的配置活動和維護活動,以及授予或取消資料庫物件上的select,insert,update

db_accessadmin

Window登入賬戶

db_datareader

讀取資料庫中所有使用者表的資料

db_datawriter

向來自資料庫中所有使用者表中新增,更新和刪除資料

db_ddladmin

執行任何資料定義語言命令

db_securityadmin

管理資料庫的安全,可以修改角色成員身份和管理許可權

db_backupoperator

可以備份資料庫

db_denydatareader

不能檢視資料庫中使用者表的任何資料

db_denydatawriter

不能向用戶表中新增,更新或刪除任何資料

public

特殊的固定資料庫使用者,每個資料庫使用者都屬於public資料庫角色

Public資料庫角色特點:

1)捕獲資料庫中使用者的預設許可權

2)所有使用者、角色或組預設屬於public角色

3)無法將使用者、組或角色指派給它,因為預設情況下它屬於該角色

4)不能被刪除

為MasterDBUser使用者服務db_ownerq許可權:

自定義資料庫角色:

當固定資料庫角色不能滿足要求的時候,可以自定義資料庫角色

為MasterDBUser新建自定義角色:

1)選中E_Market資料庫->安全性->角色->右鍵選擇新建資料庫角色

2)新建角色名為MyRole

所有者中的dbo按如下方式選擇:瀏覽中選擇dbo,然後點選確定

3)下方的角色成員按如下選擇:MasterDBUser

4)安全物件中選擇對應的表

上圖的列授權,表示可以被檢視或修改的列

3.6.1資料庫的所有者

dbo

出現在每個資料庫中

登入名sa自動對映為資料庫使用者dbo