版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、數(shù)據(jù)庫數(shù)據(jù)庫應(yīng)用軟件應(yīng)用軟件信息科學(xué)與工程學(xué)院信息科學(xué)與工程學(xué)院 計算機系計算機系魏永山魏永山第第4章章 賬戶和存取權(quán)限賬戶和存取權(quán)限對于一個數(shù)據(jù)庫管理員來說,安全性就意味著必須保證那些具有特殊數(shù)據(jù)訪問權(quán)限的用戶能夠登錄到SQL Server,并且能夠訪問數(shù)據(jù)以及對數(shù)據(jù)庫對象實施各種權(quán)限范圍內(nèi)的操作;同時,他還要防止所有的非授權(quán)用戶的非法操作。 SQL Server提供了既有效又容易的安全管理模式,這種安全管理模式是建立在安全身份驗證和訪問許可兩者機制上的?;驹砘驹碇黧w主體:它是一個標識,用來訪問SQL 服務(wù)器的對象,可能是用戶或應(yīng)用程序。安全對象安全對象:在服務(wù)器和數(shù)據(jù)庫中,可通過權(quán)
2、限保護的對象。權(quán)限權(quán)限:用來規(guī)定特定主體在訪問安全對象時允許或不允許的行為。安全級別安全級別:SQL Server 具有多個安全級別,各級別間具有層次關(guān)系。登錄名登錄名:通過登錄名可以連接到服務(wù)器。用戶用戶:通過用戶可以訪問數(shù)據(jù)庫。角色角色:通過角色可以賦予訪問數(shù)據(jù)庫的權(quán)限。重要概念重要概念主 體主體Server 角色SQL Server 登錄Windows 組域用戶賬戶本地用戶賬戶用戶數(shù)據(jù)庫角色應(yīng)用程序角色組SQLServer數(shù)據(jù)庫Windows安全對象權(quán)限安全對象主體Server 角色SQL Server 登錄Windows 組域用戶賬戶本地用戶賬戶用戶數(shù)據(jù)庫角色應(yīng)用程序角色組SQLSer
3、ver數(shù)據(jù)庫Windows安全對象權(quán)限文件密鑰服務(wù)器架構(gòu)數(shù)據(jù)庫SQL Server 2005 權(quán)限主體Server 角色SQL Server 登錄Windows 組域用戶賬戶本地用戶賬戶用戶數(shù)據(jù)庫角色應(yīng)用程序角色組SQLServer數(shù)據(jù)庫Windows安全對象權(quán)限文件密鑰服務(wù)器架構(gòu)數(shù)據(jù)庫CREATEALTERDROPCONTROLCONNECTSELECTEXECUTEUPDATEDELETEINSERTTAKE OWNERSHIPVIEW DEFINITIONBACKUP授予授予/撤銷撤銷/拒絕拒絕ACL4.1 4.1 SQL Server的驗證模式SQL Server對用戶的訪問進行兩個階
4、段的檢驗:驗證階段 登錄SQL Server時進行的檢查。如果驗證通過,用戶就可以連接到SQL Server上;否則,服務(wù)器將拒絕用戶的登錄。從而保證了系統(tǒng)安全性。許可確認階段 登錄到SQL Server上以后,系統(tǒng)檢查用戶是否有訪問服務(wù)器上數(shù)據(jù)的權(quán)限。4.1.1 Windows模式驗證模式驗證在windows驗證模式下,SQL Server檢測當(dāng)前使用的Windows用戶帳戶,確定該賬戶是否有權(quán)限登錄。該模式不必提交登錄名和密碼。4.1 SQL Server的驗證模式Windows驗證模式有以下主要優(yōu)點:數(shù)據(jù)庫管理員的工作可以集中在管理數(shù)據(jù)庫上面,而不是管理用戶賬戶。對用戶賬戶的管理可以交給
5、Windows去完成。 Windows有著更強的用戶賬戶管理工具??梢栽O(shè)置賬戶鎖定、密碼期限等。Windows的組策略支持多個用戶同時被授權(quán)訪問SQL Server。4.1 SQL Server的驗證模式4.1.2 混合驗證模式混合驗證模式混合驗證模式允許以SQL Server驗證模式或Windows驗證模式來進行驗證。使用哪種模式取決于在最初的通信時使用的網(wǎng)絡(luò)庫。如果一個用戶使用的是TCP/IP Sockets進行登錄驗證,則將使用SQL Server驗證模式;如果用戶使用Named Pipes,則登錄時將使用Windows驗證模式。SQL Server驗證模式處理登錄的過程: 用戶輸入登錄
6、名和密碼后, SQL Server在系統(tǒng)注冊表中檢測輸入的登錄名和密碼。如果輸入的登錄名存在,而且密碼也正確,就可以登錄到SQL Server上。4.1 SQL Server的驗證模式混合驗證模式具有如下優(yōu)點:創(chuàng)建了Windows之上的另外一個安全層次。支持更大范圍的用戶,例如非Windows客戶、Novell網(wǎng)絡(luò)等。一個應(yīng)用程序可以使用單個的SQL Server登錄和口令。4.1 SQL Server的驗證模式4.1.3 設(shè)置驗證模式設(shè)置驗證模式第1步:在“對象資源管理器”窗口中,選擇服務(wù)器,右擊,在彈出的快捷菜單上選擇“屬性”命令,然后在打開的“服務(wù)器屬性”對話框中,選擇“安全性”選項,打
7、開“安全性”選項卡 .第2步:在“服務(wù)器身份驗證”欄中設(shè)置驗證模式后,單擊“確定”按鈕.第3步:重新啟動SQL Server,以新的驗證模式登錄服務(wù)器。 4.1 SQL Server的驗證模式4.2 賬戶和角色SQL Server的兩種賬戶:的兩種賬戶:登錄服務(wù)器的登錄帳戶(login name)登錄帳戶只是讓用戶登錄到SQL Server中,但登錄名本身并不能讓用戶訪問服務(wù)器中的數(shù)據(jù)。要訪問特定的數(shù)據(jù)庫,還必須具有用戶名。使用數(shù)據(jù)庫的用戶帳戶(user name )用戶名在特定的數(shù)據(jù)庫內(nèi)創(chuàng)建。用戶定義的信息放在服務(wù)器上的每個數(shù)據(jù)庫的sysusers表中。通過授權(quán)給用戶來指定銀行可以訪問的數(shù)據(jù)
8、庫對象的權(quán)限。角色角色角色是一組用戶所構(gòu)成的組,可分為服務(wù)器角色和數(shù)據(jù)庫角色。當(dāng)幾個用戶需要在某個特定的數(shù)據(jù)庫中執(zhí)行類似的動作時,就可以向該數(shù)據(jù)庫中添加一個角色(role)。數(shù)據(jù)庫角色指定了可以訪問相同數(shù)據(jù)庫對象的一組數(shù)據(jù)庫用戶。4.2 賬戶和角色服務(wù)器角色服務(wù)器角色Sysadmin 可執(zhí)行SQL Server中的任何動作Serveradmin 可設(shè)置服務(wù)器范圍的配置選項Setupadmin 可管理鏈接服務(wù)器和啟動過程Securityadmin 可管理登錄和創(chuàng)建數(shù)據(jù)庫、讀取錯誤日志和更改密碼。Processadmin 管理SQL Server進程Dbcreator 創(chuàng)建、修改和刪除數(shù)據(jù)庫Dis
9、kadmin 管理磁盤文件Public 具有查看任何數(shù)據(jù)庫的權(quán)限4.2 賬戶和角色4.2.1 登錄帳戶登錄帳戶登錄帳戶的添加登錄帳戶的設(shè)置登錄帳戶的刪除4.2 賬戶和角色4.2.2 數(shù)據(jù)庫用戶數(shù)據(jù)庫用戶每個登錄帳戶在一個數(shù)據(jù)庫中中你能有一個用戶帳戶,但是每個登錄帳戶可以在不同的數(shù)據(jù)庫中各有一個用戶帳戶。如果在創(chuàng)建登錄帳戶時沒有指定對某個數(shù)據(jù)庫的存取權(quán)限,則在數(shù)據(jù)庫中,可創(chuàng)建一個新的用戶帳戶,并關(guān)聯(lián)到該登錄帳戶,則該登錄帳戶會自動具有對該數(shù)據(jù)庫的訪問權(quán)限。例:在AdventureWorks庫中創(chuàng)建一個用戶帳戶bookA,并將其關(guān)聯(lián)到bookadm登錄帳戶中。4.2 賬戶和角色4.2.3 角色角色
10、 擁有相同權(quán)限的用戶集合稱為角色服務(wù)器角色:由服務(wù)器賬戶組成的組,負責(zé)管理和維護SQL Server組。數(shù)據(jù)庫角色:由數(shù)據(jù)庫成員所組成的組,此成員可以是用戶或者其他的數(shù)據(jù)庫角色。4.2 賬戶和角色1.固定數(shù)據(jù)庫角色固定數(shù)據(jù)庫角色db_owner 在數(shù)據(jù)庫中有全部權(quán)限db_accessadmin 可以添加、刪除用戶db_datareader 可以查看所有數(shù)據(jù)庫中用戶表內(nèi)數(shù)據(jù)db_datawriter 可以添加、修改或刪除所有數(shù)據(jù)庫中用戶表內(nèi)數(shù)據(jù)的用戶db_ddladmin 可以在數(shù)據(jù)庫中執(zhí)行所有定義操作db_securityadmin可以管理數(shù)據(jù)庫中與安全權(quán)限有關(guān)所有動作db_backopera
11、tor 可以備份數(shù)據(jù)庫db_denydatareader 不能選擇數(shù)據(jù)庫中任何數(shù)據(jù)db_denydatawriter 不能改變數(shù)據(jù)庫中任何數(shù)據(jù)Public 4.2 賬戶和角色例:查看db_owner數(shù)據(jù)庫角色的屬性,并將用戶bookadm加入到該角色中。 4.2 賬戶和角色2.應(yīng)用程序角色應(yīng)用程序角色 應(yīng)用程序角色只使用應(yīng)用程序,因而不需要把權(quán)限直接賦予用戶,所以應(yīng)用程序角色沒有任何成員。此外需要為應(yīng)用程序設(shè)置一個口令來激活它。 應(yīng)用程序角色可以加強對某個特定的應(yīng)用程序的安全。這些角色允許應(yīng)用程序自己代替SQL Server接管用戶身份驗證的職責(zé)。比如,如果公司中的員工只是使用某個特定的應(yīng)用程
12、序(而不是使用Transact-SQL語句或其他任何工具)來修改員工的數(shù)據(jù)信息,那么就可以為它創(chuàng)建一個應(yīng)用程序角色。 當(dāng)應(yīng)用程序角色被應(yīng)用程序的會話激活以用于連接時,在連接期間,會話就失去了登錄、用戶賬戶或所有數(shù)據(jù)庫中的角色的權(quán)限。4.2 賬戶和角色3.public數(shù)據(jù)庫角色的權(quán)限數(shù)據(jù)庫角色的權(quán)限public角色是一種特殊的固定數(shù)據(jù)庫角色,當(dāng)在數(shù)據(jù)庫添加新用戶帳戶時,SQL Server會自動將新用戶帳戶加入public數(shù)據(jù)庫角色中,即數(shù)據(jù)庫的每個合法用戶都屬于該角色。 public角色為數(shù)據(jù)庫中的用戶提供了所有默認權(quán)限。對于用戶建立的數(shù)據(jù)庫對象, public角色默認是不設(shè)置權(quán)限。publi
13、c角色為數(shù)據(jù)庫中的所有用戶都保留了默認的權(quán)限,因此是不能被刪除的。4.2 賬戶和角色4.2.4 用戶和角色的權(quán)限問題用戶和角色的權(quán)限問題 用戶是否具有對數(shù)據(jù)庫存取的權(quán)利,要看其權(quán)限設(shè)置而定,但是,它還要受其所屬角色的權(quán)限的限制。4.2 賬戶和角色1. 用戶權(quán)限繼承角色的權(quán)限用戶權(quán)限繼承角色的權(quán)限用戶對數(shù)據(jù)庫對象的存取權(quán)限繼承于所屬角色。假如用戶User1屬于角色Role1,角色Role1已經(jīng)取得對表Table1的SELECT權(quán)限,則用戶User1也自動取得對表Table1的SELECT權(quán)限,如果角色Role1對表Table1沒有INSERT權(quán)限,而用戶User1取得了對表Table1的INSE
14、RT權(quán)限,則角色Role1最終也取得對表Table1的INSERT權(quán)限。拒絕權(quán)限優(yōu)先,只要角色Role1和用戶User1中的之一拒絕,則該權(quán)限就是拒絕。4.2 賬戶和角色2. 用戶分屬不同角色用戶分屬不同角色如果一個用戶分屬于不同的數(shù)據(jù)庫角色,例如,用戶User1即屬于角色Role1,又屬于角色Role2,則用戶User1的權(quán)限是以Role1和Role2的并集為準。但是只要有一個拒絕,則用戶User1的權(quán)限就是拒絕。4.2 賬戶和角色 命名空間將相關(guān)對象組織在一起,從而使復(fù)雜的對象列表更加方便管理。 SQL Server 2005 使用架構(gòu)架構(gòu)對數(shù)據(jù)庫對象實現(xiàn)了類似的概念。提問: 在數(shù)據(jù)庫中專
15、門有名為 student_id 的表用來統(tǒng)計學(xué)生的學(xué)號和姓名,現(xiàn)在的問題就是每一屆的學(xué)生數(shù)據(jù)都會存在這樣一張同名的表,這可能會給查詢帶來困難。 舉例:針對上面的情況,數(shù)據(jù)庫將不知道如何區(qū)分 2006 級的學(xué)生和 2007 級的學(xué)生。如何解決這一問題呢?舉例:我們以每一屆的學(xué)生建立架構(gòu),要查找 2007 級的學(xué)生學(xué)號時,在這個數(shù)據(jù)庫中就可以通過 2007.student.id 來找到合適的表了。架構(gòu):是數(shù)據(jù)庫對象的命名空間。換言之,架構(gòu)定義了一個邊界,邊界內(nèi)的所有名稱都是唯一的。數(shù)據(jù)庫中每一個對象的唯一完全限定名稱為server.database.schema.object。PersonCont
16、act(Server1.AdventureWorks.Person.Contact)SalesCustomer(Server1.AdventureWorks.Sales.Customer)AdventureWorksdboErrorLog(Server1.AdventureWorks.dbo.ErrorLog) 數(shù)據(jù)庫對象的命名空間數(shù)據(jù)庫對象的命名空間下圖有名為 Server的 SQL Server 實例中 AdventureWorks 數(shù)據(jù)庫內(nèi)的三個架構(gòu)。架構(gòu)分別名為Person、Sales和dbo,每一個架構(gòu)都包含一個表。表的完全限定名稱:包括服務(wù)器名、數(shù)據(jù)庫名和架構(gòu)名。例如:dbo 架構(gòu)
17、中的 ErrorLog 表的完全限定名稱為server1. AdventureWorks.dbo.ErrorLog在在SQL早期版本中,對象的命名空間有其所有者的用早期版本中,對象的命名空間有其所有者的用戶名決定。戶名決定。在在SQL Server 2005中,架構(gòu)與對象的所有權(quán)分離,這中,架構(gòu)與對象的所有權(quán)分離,這樣做的優(yōu)勢在于:樣做的優(yōu)勢在于: 在將數(shù)據(jù)庫對象組織到命名空間中時靈活性更強 權(quán)限管理更加簡單; 可管理性也得到了提高。 創(chuàng)建架構(gòu),在SSMS 中通過【對象資源管理器】,展開數(shù)據(jù)庫下的【安全性】,就可創(chuàng)建架構(gòu)。使用使用CREATE SCHEMA語句創(chuàng)建架構(gòu):語句創(chuàng)建架構(gòu):CREAT
18、E SCHEMA schema_name | AUTHORIZATION owner_name 舉例:創(chuàng)建名為 marketing 的架構(gòu),該架構(gòu)由名為 Lance 的用戶擁有;在新建的架構(gòu)中創(chuàng)建名為 promotions 的表。 該語句將架構(gòu)中的SELECT權(quán)限授予給Don的用戶,并拒絕將SELECT 權(quán)限授予給名為 Erik 的用戶。-創(chuàng)建名為marketing的架構(gòu),該架構(gòu)由名為Lance的用戶擁有CREATE SCHEMA Marketing AUTHORIZATION Lance -在架構(gòu)中創(chuàng)建promotions的表( 三列:source cost promonumber ;都為整型)CREATE TABLE Mmotions( source int , cost int , promonumber int )- 授予給Don的用戶的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 村級小市場管理制度(3篇)
- 現(xiàn)代種業(yè)園區(qū)管理制度(3篇)
- 疫情期間員工工作管理制度(3篇)
- 管理制度方法和技巧論文(3篇)
- 觀光農(nóng)場常態(tài)化管理制度(3篇)
- 酒店前臺經(jīng)理員工管理制度(3篇)
- 長沙無人機管理制度(3篇)
- 納稅風(fēng)險管控培訓(xùn)課件
- 《GAT 1054.7-2017公安數(shù)據(jù)元限定詞(7)》專題研究報告
- 養(yǎng)老院護理服務(wù)質(zhì)量規(guī)范制度
- GB/T 21526-2025結(jié)構(gòu)膠粘劑粘接前金屬和塑料表面處理導(dǎo)則
- 飲料廠品控安全培訓(xùn)內(nèi)容課件
- 天然氣管道應(yīng)急搶修技術(shù)方案
- 2024廣東職業(yè)技術(shù)學(xué)院教師招聘考試真題及答案
- (2025年標準)情侶欠錢協(xié)議書
- 柳鋼除塵灰資源綜合利用項目環(huán)境影響報告表
- 長租公寓消防知識培訓(xùn)課件
- 部隊普通車輛裝卸載課件
- GB/T 11803-2025船用交流低壓配電板
- 2025年“地球小博士”全國地理科普知識大賽歷年參考題庫含答案詳解(5卷)
- 喉癌解剖結(jié)構(gòu)講解
評論
0/150
提交評論