資源描述:
《SQL2000數據庫的安全性管理》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。
1、SQLServer2000數據庫的安全性管理12.1對SQLServer的訪問12.2數據庫的安全性權限12.3角色12.4與安全有關的Transact-SQL語句12.5視圖與數據訪問12.6存儲過程與數據訪問第12章SQLServer2000數據庫的安全性管理SQLServer的安全性管理是建立在登錄驗證和權限許可的基礎上的。登錄驗證是指核對連接到SQLServer實例的登錄帳戶名和密碼是否正確,以此確定用戶是否具有連接到SQLServer實例的權限。通過了登錄驗證,并不意味著用戶能夠訪問SQLServer實例中的各個數據庫。用戶只有在被授于訪問數據庫的權限許可之后才能夠對服務器上的
2、數據庫進行權限許可下的各種操作。SQLServer還引入了角色的概念,來簡化對權限許可的管理,在SQLServer中,安全性管理可以通過企業(yè)管理器的圖形界面進行,但對于熟練的DBA來說,使用Transact-SQL語句進行安全性管理可能更有效率。。在SQLServer中,通過使用視圖和存儲過程也可以控制用戶對數據的訪問,實現(xiàn)對數據安全管理。返回目錄12.1對SQLServer的訪問在SQLServer2000中,用登錄帳戶來控制用戶是否具有連接到SQLServer實例的權限。用數據庫用戶帳戶來控制用戶是否具有操縱SQLServer實例中的各個數據庫的權限。而對用戶身份的驗證,是通過核對登
3、錄帳戶名和密碼是否正確來完成的。1.身份驗證模式(AuthenticationModes)SQLServer能在兩種身份驗證模式下運行:Windows身份驗證模式和混合模式。在Windows身份驗證模式下,SQLServer依靠Windows身份驗證來驗證用戶的身份。在混合模式下,SQLServer依靠Windows身份驗證或SQLServer身份驗證來驗證用戶的身份。(1)Windows身份驗證模式(2)混合模式在混合模式下,用戶既可以使用Windows身份驗證,也可以使用SQLServer身份驗證。使用SQLServer身份驗證時,用戶必須提供登錄帳戶名和密碼,這里的登錄帳戶是數據庫
4、管理員在SQLServer中創(chuàng)建并分配給用戶的(3)配置身份驗證模式返回目錄2.登錄帳戶(logins)和數據庫用戶帳戶(databaseusers)SQLServer用數據庫用戶帳戶來指出哪一個人可以訪問哪一個數據庫。用戶對數據的訪問權限以及與數據庫對象的所有關系都是通過用戶賬號來控制的。數據庫用戶帳戶通常是由數據庫管理員在SQLServer實例的各個數據庫中創(chuàng)建的。一個登錄賬號總是與一個或多個數據庫用戶賬號相關聯(lián)。這個關聯(lián)工作,由數據庫管理員在為用戶新建登錄賬戶或修改登錄帳戶屬性時完成的。但對于一些特殊登錄帳戶,這個過程是由SQL服務器自動完成的。如:sa是SQLServer內置的管
5、理員登錄賬號,sa登錄賬號自動與每一個數據庫的dbo用戶相關聯(lián)。數據庫用戶賬號總是與某一登錄賬號相關聯(lián)的,但有一個例外,那就是guest用戶。Guest用戶不具體與某一登錄帳戶相關聯(lián),但Guest用戶允許沒有與用戶帳戶關聯(lián)的登錄帳戶訪問數據庫。用戶訪問SQLServer實例中的某一數據庫,SQLServer檢查該登錄用戶是否與該數據庫中的某一用戶帳戶相關聯(lián),如果有,則允許它以該用戶帳戶訪問數據庫;如果沒有,則SQLServer檢查該數據庫中是否有guest用戶,如果有,則允許用戶以guest用戶來訪問該數據庫,如果沒有,則該用戶對該數據庫的訪問被拒絕。在安裝SQLServer時,系統(tǒng)自動
6、在master、pubs、tempdb和Northwind數據庫中創(chuàng)建guest用戶。返回目錄(1)創(chuàng)建登錄帳戶創(chuàng)建登錄帳戶的方法有三種:使用企業(yè)管理器、使用Transact-SQL語句、使用創(chuàng)建登錄向導。(2)授予WindowsNT/2000用戶或組連接SQLServer的權限在WindowsNT/2000帳戶(用戶或組)可以訪問數據庫之前,必須授予它們連接到SQLServer實例的權限。(3)創(chuàng)建數據庫用戶帳戶可以使用企業(yè)管理器或Transact-SQL語句來創(chuàng)建數據庫用戶帳戶,也可以使用企業(yè)管理器來創(chuàng)建數據庫用戶帳戶。為了創(chuàng)建一個新的數據庫用戶帳戶,必須事先確定一個將與該數據庫用戶
7、相關的登錄帳戶。返回目錄(4)sa登錄帳號、dbo數據庫用戶帳號及數據庫對象所有者。系統(tǒng)管理員(SystemAdministrator)登錄帳號sa是為向后兼容而提供的特殊登錄。sa是SQLServer自動創(chuàng)建的、內置的登錄帳號,不能被刪除。默認情況下,sa被授予固定服務器角色sysadmin,可以在SQLServer中進行任何活動。dbo是SQLServer自動創(chuàng)建的、內置的數據庫用戶帳號,具有在數據庫中執(zhí)行所有活動的權限。SQL