14.3.1 數據庫用戶簡介
數據庫用戶用來指出哪一個人可以訪問哪一個數據庫。在一個數據庫中,用戶ID 惟一標識一個用戶,用戶對數據的訪問權限以及對數據庫對象的所有關系都是通過用戶賬號來控制的,用戶賬號總是基於數據庫的,即兩個不同數據庫中可以有兩個相同的用戶賬號。
在數據庫中,用戶賬號與登錄賬號是兩個不同的概念。一個合法的登錄賬號只表明該賬號通過了NT 認證或SQL Server 認證,但不能表明其可以對數據庫數據和數據對象進行某種或某些操作,所以一個登錄賬號總是與一個或多個數據庫用戶賬號(這些賬號必須分別存在相異的數據庫中)相對應,這樣才可以訪問數據庫。例如,登錄賬號sa 自動與每一個數據庫用戶dbo 相關聯。
通常而言,數據庫用戶賬號總是與某一登錄賬號相關聯,但有一個例外,那就是guest用戶。
在安裝系統時,guest 用戶被加入到master、 pubs、 tempdb 和Northwind 數據中,那麼SQL Server 為什麼要進行這樣的處理呢?讓我們看看在用戶通過NT 認證或SQLServer 認證而成功登錄到SQL Server 之後,SQL Server 又做了哪些事情:
注意:通常我們可以像刪除或添加其它有戶那樣刪除或添加guest用戶,但不能從master或tempdb數據庫中刪除該用戶,並且在一個新建的數據庫中不存在guest用戶,除非將其添加進行。
14.3.2 管理數據庫用戶
1 利用SQL Server Enterprise Manager管理數據庫用戶
創建新數據庫用戶利用SQL Server Enterprise Manager 創建一個新數據庫用戶要執行以下步驟:
(1) 啟動SQL Server Enterprise Manager, 單擊登錄服務器旁邊的‘+’ 標志。
(2) 打開Database 文件夾,打開要創建用戶的數據庫。
(3) 右擊User 圖標,在彈出菜單中選擇 New Database User, 彈出New Database User – New User 對話框。如圖14-3 所示。
(4) 在Login 選擇框內選擇已經創建的登錄賬號、在User 選擇框內輸入數據庫用戶名稱。
(5)在Database role membership 下的選項框中為該用戶選擇數據庫角色(關於數據庫角色將在角色一節中作詳細介紹)。
(6)單擊確定按鈕。
當然,在創建一個SQL Server 登錄賬號時,就可以先為該登錄賬號定出其在不同數據庫中所使用的用戶名稱,這實際上也完成了創建新的數據庫用戶這一任務。其操作步驟見“14.2.1 使用SQL Server Enterprise Manager 管理SQL Server 登錄”。 在打開的SQL Server PropertIEs – New Login 對話框中選擇Database Access 標簽頁。見圖14-4 所示。
查看、刪除數據庫用戶在SQL Server Enterprise Manager 中,選中User 圖標(創建數據庫用戶的第三步),則在右面的窗格中顯示當前數據庫的所有用戶。如圖14-5 所示。
選中User 圖標後,在右面窗格中右擊想要刪除的數據庫用戶,則會彈出選項菜單,然後選擇Delete, 則會從當前數據庫中刪除該數據庫用戶。見圖14-5。
文