




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、2022/3/261第第 8 8 章章數(shù)據(jù)庫的安全管理數(shù)據(jù)庫的安全管理 返 回2022/3/262第第8 8章章 數(shù)據(jù)庫的安全管理數(shù)據(jù)庫的安全管理 知知 識識 點點 數(shù)據(jù)庫安全、系統(tǒng)的安全機(jī)制數(shù)據(jù)庫安全、系統(tǒng)的安全機(jī)制 身份驗證模式、登錄賬號、數(shù)據(jù)庫權(quán)限身份驗證模式、登錄賬號、數(shù)據(jù)庫權(quán)限 服務(wù)器角色、數(shù)據(jù)庫角色、用戶定義數(shù)據(jù)庫角色、服務(wù)器角色、數(shù)據(jù)庫角色、用戶定義數(shù)據(jù)庫角色、應(yīng)用程序角色應(yīng)用程序角色 難難 點點 系統(tǒng)的安全機(jī)制、數(shù)據(jù)庫級的安全系統(tǒng)的安全機(jī)制、數(shù)據(jù)庫級的安全 SQL Server的身份驗證模式、管理數(shù)據(jù)庫角色的身份驗證模式、管理數(shù)據(jù)庫角色 數(shù)據(jù)庫權(quán)限、對象權(quán)限、語句權(quán)限數(shù)據(jù)庫權(quán)限
2、、對象權(quán)限、語句權(quán)限2022/3/263 要要 求求熟練掌握以下內(nèi)容:熟練掌握以下內(nèi)容: 操作系統(tǒng)級的安全、服務(wù)器級的安全、數(shù)據(jù)庫級操作系統(tǒng)級的安全、服務(wù)器級的安全、數(shù)據(jù)庫級的安全的安全 SQL Server的身份驗證模式、創(chuàng)建的身份驗證模式、創(chuàng)建Windows登錄賬戶、創(chuàng)建服務(wù)器登錄賬號登錄賬戶、創(chuàng)建服務(wù)器登錄賬號 查看、修改和刪除登錄賬戶查看、修改和刪除登錄賬戶 數(shù)據(jù)庫角色、管理用戶定義數(shù)據(jù)庫角色數(shù)據(jù)庫角色、管理用戶定義數(shù)據(jù)庫角色 應(yīng)用程序角色建立與刪除應(yīng)用程序角色建立與刪除 數(shù)據(jù)庫權(quán)限管理數(shù)據(jù)庫權(quán)限管理了解以下內(nèi)容:了解以下內(nèi)容: 固定服務(wù)器角色、固定服務(wù)器角色、SQL Server角色
3、的類型管理角色的類型管理2022/3/2648.1 數(shù)據(jù)庫安全管理概述數(shù)據(jù)庫安全管理概述 數(shù)據(jù)安全對數(shù)據(jù)庫管理系統(tǒng)是至關(guān)重要的,數(shù)據(jù)安全對數(shù)據(jù)庫管理系統(tǒng)是至關(guān)重要的,數(shù)據(jù)庫的安全管理是指保護(hù)數(shù)據(jù)庫,防止非數(shù)據(jù)庫的安全管理是指保護(hù)數(shù)據(jù)庫,防止非法訪問造成的數(shù)據(jù)破壞或泄密。為了保證數(shù)法訪問造成的數(shù)據(jù)破壞或泄密。為了保證數(shù)據(jù)庫的安全,需要采取一系列的安全防護(hù)措據(jù)庫的安全,需要采取一系列的安全防護(hù)措施,施, SQL ServerSQL Server系統(tǒng)提供了完善的安全管系統(tǒng)提供了完善的安全管理機(jī)制,包括身份驗證模式及其設(shè)置、登錄理機(jī)制,包括身份驗證模式及其設(shè)置、登錄賬號管理、數(shù)據(jù)庫用戶管理、角色管理和
4、權(quán)賬號管理、數(shù)據(jù)庫用戶管理、角色管理和權(quán)限管理等。限管理等。 2022/3/2651操作系統(tǒng)級的安全操作系統(tǒng)級的安全 用戶使用客戶機(jī),通過網(wǎng)絡(luò)訪問用戶使用客戶機(jī),通過網(wǎng)絡(luò)訪問SQL Server服務(wù)器時,首先要獲得計算機(jī)操作系統(tǒng)的使用權(quán)。服務(wù)器時,首先要獲得計算機(jī)操作系統(tǒng)的使用權(quán)。2服務(wù)器級的安全服務(wù)器級的安全 SQL Server服務(wù)器級的安全,是建立在控制服務(wù)器級的安全,是建立在控制服務(wù)器的登錄賬號和口令的基礎(chǔ)上。服務(wù)器的登錄賬號和口令的基礎(chǔ)上。 SQL Server采用了標(biāo)準(zhǔn)采用了標(biāo)準(zhǔn)SQL Server登錄和集成登錄和集成Windows NT登錄兩種方式。登錄兩種方式。 3數(shù)據(jù)庫級的安
5、全數(shù)據(jù)庫級的安全 在用戶通過在用戶通過SQL Server服務(wù)器的安全檢驗之服務(wù)器的安全檢驗之后,將直接面對不同的數(shù)據(jù)庫,這是用戶接受的后,將直接面對不同的數(shù)據(jù)庫,這是用戶接受的第三次安全檢驗。第三次安全檢驗。 2022/3/2668.2 SQL Server8.2 SQL Server系統(tǒng)的安全機(jī)制系統(tǒng)的安全機(jī)制 SQL Server系統(tǒng)的安全管理是建立系統(tǒng)的安全管理是建立在身份驗證和訪問許可兩種機(jī)制上的。在身份驗證和訪問許可兩種機(jī)制上的。身份驗證是確定登錄到身份驗證是確定登錄到SQL Server系系統(tǒng)的用戶,其登錄賬號和密碼是否正確,統(tǒng)的用戶,其登錄賬號和密碼是否正確,以此來驗證他是否具
6、有進(jìn)入以此來驗證他是否具有進(jìn)入SQL Server系統(tǒng)的權(quán)限。通過驗證的用戶,系統(tǒng)的權(quán)限。通過驗證的用戶,同時獲取了訪問數(shù)據(jù)庫的某些權(quán)限,才同時獲取了訪問數(shù)據(jù)庫的某些權(quán)限,才能對數(shù)據(jù)庫進(jìn)行權(quán)限許可范圍內(nèi)的操作。能對數(shù)據(jù)庫進(jìn)行權(quán)限許可范圍內(nèi)的操作。2022/3/2678.2.1 SQL Server8.2.1 SQL Server的身份驗證模式的身份驗證模式1身份驗證身份驗證(1)身份驗證階段。用戶在獲得對數(shù)據(jù)庫的訪問權(quán)限之前,身份驗證階段。用戶在獲得對數(shù)據(jù)庫的訪問權(quán)限之前,必須合法登錄到必須合法登錄到SQL Server服務(wù)器上。服務(wù)器上。(2)權(quán)限認(rèn)證階段。系統(tǒng)只驗證用戶是否有連接權(quán)限認(rèn)證階
7、段。系統(tǒng)只驗證用戶是否有連接SQL Server系統(tǒng)的權(quán)限,如果身份驗證通過,只表示用戶可以系統(tǒng)的權(quán)限,如果身份驗證通過,只表示用戶可以連接到系統(tǒng)服務(wù)器上。連接到系統(tǒng)服務(wù)器上。2Windows驗證模式驗證模式 Windows驗證模式利用安全性和賬號管理的機(jī)制驗證驗證模式利用安全性和賬號管理的機(jī)制驗證用戶身份,只要用戶能夠通過用戶身份,只要用戶能夠通過Windows用戶賬號驗證,用戶賬號驗證,即可連接到即可連接到SQL Server的服務(wù)器,不再進(jìn)行身份驗證。的服務(wù)器,不再進(jìn)行身份驗證。2022/3/2683混合驗證模式混合驗證模式 混合身份驗證模式將區(qū)分用戶賬號在混合身份驗證模式將區(qū)分用戶賬號
8、在Windows操作系統(tǒng)下是否可信,對于可信的連接用戶系統(tǒng),操作系統(tǒng)下是否可信,對于可信的連接用戶系統(tǒng),直接采用直接采用Windows身份驗證模式,否則,身份驗證模式,否則,SQL Server系統(tǒng)會通過賬戶的存在性和密碼的匹配性系統(tǒng)會通過賬戶的存在性和密碼的匹配性進(jìn)行驗證。進(jìn)行驗證。采用混合驗證模式具有以下優(yōu)點。采用混合驗證模式具有以下優(yōu)點。(1)創(chuàng)建了創(chuàng)建了Windows之上的另外一個安全層次。之上的另外一個安全層次。(2)支持更大范圍的用戶使用支持更大范圍的用戶使用SQL Server,例如,例如非非Windows用戶、用戶、Novell網(wǎng)絡(luò)用戶等。網(wǎng)絡(luò)用戶等。(3)應(yīng)用程序可以使用應(yīng)用
9、程序可以使用SQL Server口令登錄??诹畹卿洝?022/3/2698.2.2 設(shè)置身份驗證模式設(shè)置身份驗證模式 在安裝在安裝SQL Server系統(tǒng)時默系統(tǒng)時默認(rèn)的是認(rèn)的是Windows身份驗證模式。身份驗證模式。可以使用可以使用SQL Server管理工具管理工具設(shè)置驗證模式,設(shè)置驗證模式只設(shè)置驗證模式,設(shè)置驗證模式只能由系統(tǒng)管理員來完成。能由系統(tǒng)管理員來完成。 在在SQL Server管理平臺的對管理平臺的對象資源管理器中,設(shè)置驗證模式象資源管理器中,設(shè)置驗證模式的具體操作步驟如下。的具體操作步驟如下。(1)在對象資源管理器中,右擊在對象資源管理器中,右擊服務(wù)器,在彈出的快捷菜單中選
10、服務(wù)器,在彈出的快捷菜單中選擇擇“屬性屬性”命令,如圖命令,如圖8.1所示。所示。屏幕上會出現(xiàn)屏幕上會出現(xiàn)“服務(wù)器屬性服務(wù)器屬性”窗窗口,如圖口,如圖8.2所示。所示。圖圖8.1 8.1 快捷菜單快捷菜單 圖圖8.2 “8.2 “服務(wù)器屬性服務(wù)器屬性”窗口窗口 2022/3/2610(2)單擊單擊“安全性安全性”選項,在右邊的選項,在右邊的“服務(wù)器身份驗證服務(wù)器身份驗證”下,選擇其中的下,選擇其中的服務(wù)器身份驗證模式,在服務(wù)器身份驗證模式,在“登錄審核登錄審核”下,選擇其中需要的審核方式。下,選擇其中需要的審核方式。(3)設(shè)置完畢,單擊設(shè)置完畢,單擊“確定確定”按鈕,按鈕,完成驗證模式的設(shè)置或
11、修改。完成驗證模式的設(shè)置或修改。2022/3/26118.3 賬號管理賬號管理 通過身份驗證并不代表能夠訪問通過身份驗證并不代表能夠訪問SQL Server中的數(shù)據(jù),用戶只有在獲取訪問數(shù)中的數(shù)據(jù),用戶只有在獲取訪問數(shù)據(jù)庫的權(quán)限之后,才能夠?qū)Ψ?wù)器上的數(shù)據(jù)據(jù)庫的權(quán)限之后,才能夠?qū)Ψ?wù)器上的數(shù)據(jù)庫進(jìn)行權(quán)限許可下的各種操作。庫進(jìn)行權(quán)限許可下的各種操作。 數(shù)據(jù)庫用戶賬號可以從已經(jīng)存在的數(shù)據(jù)庫用戶賬號可以從已經(jīng)存在的Windows用戶賬號、用戶賬號、Windows用戶組、用戶組、SQL Server的登錄名或角色映射出來。的登錄名或角色映射出來。 2022/3/26128.3.1 創(chuàng)建登錄賬戶創(chuàng)建登錄賬
12、戶 1創(chuàng)建創(chuàng)建Windows登錄賬戶登錄賬戶 Windows登錄賬戶是由登錄賬戶是由Windows域用戶域用戶管理器創(chuàng)建、修改或刪除。管理器創(chuàng)建、修改或刪除。Windows操作系操作系統(tǒng)將用戶劃分為不同的用戶組,組中所有成員繼統(tǒng)將用戶劃分為不同的用戶組,組中所有成員繼承用戶組的所有權(quán)限。承用戶組的所有權(quán)限。【例【例8.1】創(chuàng)建用戶名為】創(chuàng)建用戶名為“SQL_YH”的的Windows用戶賬戶。用戶賬戶。(1)以以Administrators身份登錄到身份登錄到Windows操作系統(tǒng),選擇操作系統(tǒng),選擇“開始開始/程序程序/控制控制面板面板/管理工具管理工具/計算機(jī)管理計算機(jī)管理”命令。命令。20
13、22/3/26134. 網(wǎng)絡(luò)接口卡的種類網(wǎng)絡(luò)接口卡的種類(2)展開展開“本地用戶和組本地用戶和組”文件夾,右擊文件夾,右擊“用用戶戶”選項,在彈出的快捷菜單中選擇選項,在彈出的快捷菜單中選擇“新用戶新用戶”命令,屏幕出現(xiàn)命令,屏幕出現(xiàn)“新用戶新用戶”對話框。在對話框。在“用戶用戶名名”文本框中輸人文本框中輸人“SQL_YH”, 在在“密碼密碼”文本框中輸人文本框中輸人“sql_yh”并確認(rèn),然后單擊并確認(rèn),然后單擊“創(chuàng)建創(chuàng)建”按鈕,創(chuàng)建指定的登陸賬戶,最后單按鈕,創(chuàng)建指定的登陸賬戶,最后單擊擊“關(guān)閉關(guān)閉”按鈕完成創(chuàng)建。按鈕完成創(chuàng)建。2022/3/26142 2創(chuàng)建服務(wù)器登錄賬號創(chuàng)建服務(wù)器登錄賬
14、號 登錄屬于服務(wù)器級的安全策略,要連接到登錄屬于服務(wù)器級的安全策略,要連接到SQL Server數(shù)據(jù)庫,要有一數(shù)據(jù)庫,要有一個合法的登錄賬號。個合法的登錄賬號。【例【例8.2】使用戶名為】使用戶名為“SQL_YH”的的Windows用戶,能夠登錄到用戶,能夠登錄到SQL Server。 (1)用可視化方式將用可視化方式將Windows的賬戶加入到的賬戶加入到SQL Server登錄賬戶登錄賬戶具體操作步驟如下。具體操作步驟如下。 在在SQL Server管理平臺的對象資源管理器中,展開管理平臺的對象資源管理器中,展開“安全性安全性”項。項。右擊右擊“登錄名登錄名”,在彈出的快捷菜單中選擇,在彈
15、出的快捷菜單中選擇“新建登錄名新建登錄名”命令,打開命令,打開“登錄名登錄名-新建新建”窗口,如圖窗口,如圖8.3所示。所示。圖圖8.3 “8.3 “登錄名登錄名- -新建新建”窗口窗口 2022/3/2615 選擇選擇Windows驗證模驗證模式,單擊式,單擊“搜索搜索”按鈕,屏按鈕,屏幕出現(xiàn)幕出現(xiàn)“選擇用戶或組選擇用戶或組”對對話框,如圖話框,如圖8.4所示,在所示,在“對象名對象名”文本框中輸入文本框中輸入“SQL_YH”或單擊或單擊“高級高級”按鈕,然后查找需要的用戶按鈕,然后查找需要的用戶或組名完成輸入?;蚪M名完成輸入。 圖圖8.4 “選擇用戶或組選擇用戶或組”窗口窗口 在其中的在其
16、中的“常規(guī)常規(guī)”項中,如果選中了項中,如果選中了“Windows身份驗身份驗證證”,則,則“登錄名登錄名”設(shè)置為用設(shè)置為用Windows賬號登錄,無須設(shè)賬號登錄,無須設(shè)置密碼;如果選中了置密碼;如果選中了“SQL Server身份驗證身份驗證”,則需要設(shè),則需要設(shè)置一個置一個“登錄名登錄名”以及以及“密碼密碼”和和“確認(rèn)密碼確認(rèn)密碼”。2022/3/2616(2)用命令方式將用命令方式將Windows的賬戶加入到的賬戶加入到SQL Server登錄賬戶登錄賬戶1)使用系統(tǒng)存儲過程使用系統(tǒng)存儲過程sp_grantlogin授予登錄權(quán)限授予登錄權(quán)限其語法格式如下。其語法格式如下。 Sp_grant
17、login loginame=用戶名用戶名【例【例8.3】用系統(tǒng)存儲過程】用系統(tǒng)存儲過程sp_grantlogin將將Windows用戶用戶“SQL_YH”加入到加入到SQL Server登錄賬戶中。登錄賬戶中。 EXEC sp_grantlogin PC-200806201116 SQL_YH或或 EXEC sp_grantlogin PC-200806201116 SQL_YH2022/3/26172)使用系統(tǒng)存儲過程使用系統(tǒng)存儲過程sp_addlogin創(chuàng)建創(chuàng)建登錄登錄Sp_addloginloginame= 用戶名用戶名,passwd=密碼密碼,defdb=數(shù)據(jù)庫名數(shù)據(jù)庫名,defla
18、nguage=語言語言,sid=sid,encryptopt=密碼加密選項密碼加密選項2022/3/2618格式中各選項的含義如下。格式中各選項的含義如下。loginame=用戶名用戶名:表示登錄賬戶名,:表示登錄賬戶名,沒有默認(rèn)設(shè)置。沒有默認(rèn)設(shè)置。passwd=密碼密碼:表示登錄密碼,默認(rèn):表示登錄密碼,默認(rèn)設(shè)置為設(shè)置為NULL,加密設(shè)置后加密并存儲在系統(tǒng)表中。,加密設(shè)置后加密并存儲在系統(tǒng)表中。defdb=數(shù)據(jù)庫名數(shù)據(jù)庫名:指定登錄的數(shù)據(jù)庫,:指定登錄的數(shù)據(jù)庫,默認(rèn)設(shè)置為系統(tǒng)數(shù)據(jù)庫默認(rèn)設(shè)置為系統(tǒng)數(shù)據(jù)庫master。2022/3/2619deflanguage=語言語言:表示用戶登錄:表示用戶
19、登錄SQL Server時系統(tǒng)默認(rèn)的語言,默認(rèn)設(shè)置為服務(wù)器當(dāng)前的語言。時系統(tǒng)默認(rèn)的語言,默認(rèn)設(shè)置為服務(wù)器當(dāng)前的語言。sid=sid:表示安全標(biāo)識符:表示安全標(biāo)識符(SID)。sid的數(shù)據(jù)類的數(shù)據(jù)類型為型為varbinary(16),默認(rèn)設(shè)置為,默認(rèn)設(shè)置為NULL,系統(tǒng)為新登錄,系統(tǒng)為新登錄生成生成SID。encryptopt=密碼加密選項密碼加密選項:指定存儲在系統(tǒng):指定存儲在系統(tǒng)表中的密碼是否要加密。表中的密碼是否要加密。 【例例8.5】使用系統(tǒng)存儲過程】使用系統(tǒng)存儲過程sp_addlongin創(chuàng)建一個創(chuàng)建一個“TYC_YLH”登錄賬戶,新登密碼為登錄賬戶,新登密碼為“sqlserver_
20、tyc_ylh”,默認(rèn)數(shù)據(jù)庫為學(xué)生管理。,默認(rèn)數(shù)據(jù)庫為學(xué)生管理。 EXEC sp_addlogin TYC_YLH, sqlserver_tyc _ylh, 學(xué)生管理學(xué)生管理2022/3/26208.3.2 查看服務(wù)器登錄賬號查看服務(wù)器登錄賬號 1用可視化方式查看用可視化方式查看SQL Server登錄賬戶登錄賬戶 在對象資源管理器在對象資源管理器中,展開中,展開“安全性安全性/登錄名登錄名”項,即可看項,即可看到數(shù)據(jù)庫中所有的用到數(shù)據(jù)庫中所有的用戶,其中有默認(rèn)登錄戶,其中有默認(rèn)登錄賬號、系統(tǒng)登錄賬號賬號、系統(tǒng)登錄賬號以及其他的登錄賬號,以及其他的登錄賬號,如圖如圖8.5所示。所示。 圖圖8.
21、5 查看服務(wù)器賬戶查看服務(wù)器賬戶2022/3/26212 2用命令方式查看用命令方式查看SQL ServerSQL Server登錄賬戶登錄賬戶使用系統(tǒng)存儲過程使用系統(tǒng)存儲過程sp_helplogins查看,其語法查看,其語法格式如下。格式如下。sp_helploginsLogin NamePattern=用戶名用戶名【例【例8.6】用系統(tǒng)存儲過程查看】用系統(tǒng)存儲過程查看SQL Server系統(tǒng)中所有賬戶系統(tǒng)中所有賬戶信息。信息。EXEC sp_helplogins TYC_YLH圖圖8.6 例例8.6運(yùn)行結(jié)果運(yùn)行結(jié)果 2022/3/26228.3.3 修改登錄賬戶修改登錄賬戶 根據(jù)修改項目不
22、同,有修改密碼、修改默認(rèn)數(shù)據(jù)根據(jù)修改項目不同,有修改密碼、修改默認(rèn)數(shù)據(jù)庫和修改默認(rèn)語言等,分別使用庫和修改默認(rèn)語言等,分別使用sp_password、sp_defaultdb、sp_defaultlanguage等系統(tǒng)等系統(tǒng)存儲過程。他們的語法格式如下。存儲過程。他們的語法格式如下。 sp_passwordold=原密碼原密碼new=新密碼新密碼,loginame=用戶名用戶名 sp_defaultdbloginame=用戶用戶名名,defdb=數(shù)據(jù)庫名數(shù)據(jù)庫名2022/3/2623sp_defaultlanguageloginame=用戶名用戶名,language =語言語言【例【例8.8】
23、修改登錄賬戶】修改登錄賬戶“TYC_YLH”的密碼。的密碼。 EXEC sp_password sqlserver _tyc_ylh,sqlserver_tyc_tyh,TYC_YLH2022/3/26248.3.4 刪除登錄賬戶刪除登錄賬戶 1用可視化方式刪除登錄賬戶用可視化方式刪除登錄賬戶【例【例8.9】用可視化方式刪除登錄賬戶名為】用可視化方式刪除登錄賬戶名為“SQL_YH”的用戶賬戶。的用戶賬戶。(1)在對象資源管理器中,展開在對象資源管理器中,展開“安全性安全性/登錄名登錄名”項,項,即可看到數(shù)據(jù)庫中所有的用戶,如圖即可看到數(shù)據(jù)庫中所有的用戶,如圖8.4所示。所示。(2)在在“登錄名
24、登錄名”詳細(xì)列表中,右擊要刪除的詳細(xì)列表中,右擊要刪除的 “PC-200806201116SQL_YH”用戶名,在彈出的快捷用戶名,在彈出的快捷菜單中,選擇菜單中,選擇“刪除刪除”命令,屏幕會出現(xiàn)命令,屏幕會出現(xiàn)“刪除對象刪除對象”對話框。在其中選中要刪除的用戶賬戶名:對話框。在其中選中要刪除的用戶賬戶名:“PC-200806201116SQL_YH”,單擊,單擊“確定確定”按鈕即按鈕即可完成刪除操作。可完成刪除操作。2022/3/26252 2用命令方式刪除登錄賬戶用命令方式刪除登錄賬戶 刪除刪除Windows用戶或組登錄賬戶用戶或組登錄賬戶 刪除刪除Windows用戶或組登錄賬戶的語法格用
25、戶或組登錄賬戶的語法格式如下。式如下。sp_revokeloginloginame=用戶名用戶名【例【例8.10】用命令方式刪除登錄賬戶名為】用命令方式刪除登錄賬戶名為“Users”的的Windows組賬戶。組賬戶。EXEC sp_revokelogin BUILTINUsersGO2022/3/2626刪除刪除SQL Server登錄賬戶登錄賬戶刪除刪除SQL Server登錄賬戶的語法格式如下。登錄賬戶的語法格式如下。sp_droploginloginame=用戶名用戶名【例【例8.11】用系統(tǒng)存儲過程】用系統(tǒng)存儲過程sp_droplogin,刪除名為,刪除名為“SQL_YH”的的SQL
26、Server用戶賬戶。用戶賬戶。EXEC sp_droplogin PC-200806201116SQL_YHGO2022/3/26278.4 角色管理角色管理 角色是為了方便權(quán)限管理而設(shè)置的管角色是為了方便權(quán)限管理而設(shè)置的管理單位,角色是一種理單位,角色是一種SQL Server安全安全賬戶。角色包含賬戶。角色包含SQL Server登錄、登錄、Windows登錄,若用戶被加入到某一登錄,若用戶被加入到某一個角色中,則具有該角色的權(quán)限。個角色中,則具有該角色的權(quán)限。 2022/3/26288.4.1 SQL Server角色的類型角色的類型 1固定角色固定角色 系統(tǒng)定義了固定角色,涉及服務(wù)器
27、配置管系統(tǒng)定義了固定角色,涉及服務(wù)器配置管理以及服務(wù)器和數(shù)據(jù)庫的權(quán)限管理,固定角理以及服務(wù)器和數(shù)據(jù)庫的權(quán)限管理,固定角色分為固定服務(wù)器角色和固定數(shù)據(jù)庫角色。色分為固定服務(wù)器角色和固定數(shù)據(jù)庫角色。 常用的固定服務(wù)器角色名稱及權(quán)限如下。常用的固定服務(wù)器角色名稱及權(quán)限如下。sysadmin:系統(tǒng)管理員,可以對:系統(tǒng)管理員,可以對SQL Server服務(wù)器執(zhí)行任何操作。服務(wù)器執(zhí)行任何操作。serveradmin:服務(wù)器管理員,具有對:服務(wù)器管理員,具有對服務(wù)器設(shè)置和管理的權(quán)限。服務(wù)器設(shè)置和管理的權(quán)限。2022/3/2629setupadmin:設(shè)置管理員,可添加和刪除服:設(shè)置管理員,可添加和刪除服務(wù)器
28、的鏈接,并執(zhí)行特定的系統(tǒng)存儲過程。務(wù)器的鏈接,并執(zhí)行特定的系統(tǒng)存儲過程。securityadmin:安全管理員,管理服務(wù)器登:安全管理員,管理服務(wù)器登錄標(biāo)識、更改密碼、創(chuàng)建數(shù)據(jù)庫的權(quán)限,讀取錯誤錄標(biāo)識、更改密碼、創(chuàng)建數(shù)據(jù)庫的權(quán)限,讀取錯誤日志等。日志等。processadmin:進(jìn)程管理員,管理在:進(jìn)程管理員,管理在SQL Server服務(wù)器中運(yùn)行的各個進(jìn)程。服務(wù)器中運(yùn)行的各個進(jìn)程。dbcreator:數(shù)據(jù)庫創(chuàng)建者,可創(chuàng)建、更改和刪:數(shù)據(jù)庫創(chuàng)建者,可創(chuàng)建、更改和刪除數(shù)據(jù)庫。除數(shù)據(jù)庫。diskadmin:管理系統(tǒng)磁盤文件。:管理系統(tǒng)磁盤文件。bulkadmin:在有:在有INSERT權(quán)限的前提下
29、,執(zhí)權(quán)限的前提下,執(zhí)行行BULK INSERT語句。語句。2022/3/2630 固定數(shù)據(jù)庫角色是指角色具有管理、訪問數(shù)據(jù)固定數(shù)據(jù)庫角色是指角色具有管理、訪問數(shù)據(jù)庫的權(quán)限已被庫的權(quán)限已被SQL Server固定,并且固定,并且SQL Server管理者不能對其進(jìn)行任何更改。管理者不能對其進(jìn)行任何更改。 常用的固定數(shù)據(jù)庫角色的名稱及權(quán)限如下。常用的固定數(shù)據(jù)庫角色的名稱及權(quán)限如下。db_owner:數(shù)據(jù)庫的所有者,具有數(shù)據(jù)庫:數(shù)據(jù)庫的所有者,具有數(shù)據(jù)庫中的全部權(quán)限。中的全部權(quán)限。db_accessadmin:數(shù)據(jù)庫訪問權(quán)限管理員,:數(shù)據(jù)庫訪問權(quán)限管理員,具有添加或刪除用戶(組)的權(quán)限。具有添加或刪
30、除用戶(組)的權(quán)限。db_securityadmin:數(shù)據(jù)庫角色管理員,:數(shù)據(jù)庫角色管理員,具有管理角色和數(shù)據(jù)庫角色成員、對象所有權(quán)、具有管理角色和數(shù)據(jù)庫角色成員、對象所有權(quán)、語句執(zhí)行權(quán)限、數(shù)據(jù)庫訪問權(quán)限。語句執(zhí)行權(quán)限、數(shù)據(jù)庫訪問權(quán)限。db_ddladmin:數(shù)據(jù)庫:數(shù)據(jù)庫DDL管理員,在數(shù)管理員,在數(shù)據(jù)庫中創(chuàng)建、刪除或修改數(shù)據(jù)庫對象。據(jù)庫中創(chuàng)建、刪除或修改數(shù)據(jù)庫對象。2022/3/2631db_backupoperator:具有數(shù)據(jù)庫備份權(quán)限。:具有數(shù)據(jù)庫備份權(quán)限。db_datareader:僅對數(shù)據(jù)庫中的表執(zhí)行:僅對數(shù)據(jù)庫中的表執(zhí)行SELECT操作,讀取所有表的信息。操作,讀取所有表的信息
31、。db_datawriter:僅對數(shù)據(jù)庫中的表執(zhí)行:僅對數(shù)據(jù)庫中的表執(zhí)行INSERT、UPDATE、DELETE操作,但不能進(jìn)操作,但不能進(jìn)行行SELECT操作。操作。db_denydatawriter:不能對表進(jìn)行增、刪、:不能對表進(jìn)行增、刪、修改操作。修改操作。db_denydatareader:不能讀取數(shù)據(jù)庫中表:不能讀取數(shù)據(jù)庫中表的內(nèi)容。的內(nèi)容。public:每個數(shù)據(jù)庫用戶都是:每個數(shù)據(jù)庫用戶都是public角色成員。角色成員。2022/3/26322 2用戶定義數(shù)據(jù)庫角色用戶定義數(shù)據(jù)庫角色 用戶定義數(shù)據(jù)庫角色的優(yōu)點是用戶定義數(shù)據(jù)庫角色的優(yōu)點是SQL Server數(shù)據(jù)庫角色,可以包含數(shù)
32、據(jù)庫角色,可以包含Windows用戶組或用戶;同一數(shù)據(jù)庫的用戶組或用戶;同一數(shù)據(jù)庫的用戶可以具有多個不同的用戶定義角色,用戶可以具有多個不同的用戶定義角色,這種角色是自由組合,而不僅僅是這種角色是自由組合,而不僅僅是public角色與其他角色的結(jié)合;角色可以進(jìn)行嵌角色與其他角色的結(jié)合;角色可以進(jìn)行嵌套,在數(shù)據(jù)庫中實現(xiàn)不同級別的安全性。套,在數(shù)據(jù)庫中實現(xiàn)不同級別的安全性。2022/3/26338.4.2 8.4.2 固定服務(wù)器角色管理固定服務(wù)器角色管理 1添加固定服務(wù)器角色成員添加固定服務(wù)器角色成員(1)用可視化方式添加固定服務(wù)器角色成員用可視化方式添加固定服務(wù)器角色成員【例【例8.12】用可視
33、化方式將登錄賬戶】用可視化方式將登錄賬戶“SQL_YH”添加為固定服務(wù)器角色添加為固定服務(wù)器角色dbcreator的成員。的成員。 用可視化方式添加固定服務(wù)器角色成員的具體操用可視化方式添加固定服務(wù)器角色成員的具體操作步驟如下。作步驟如下。1)從從“服務(wù)器角色服務(wù)器角色”項添加項添加在對象資源管理器中,展開在對象資源管理器中,展開“數(shù)據(jù)庫服務(wù)器數(shù)據(jù)庫服務(wù)器/安安全性全性/服務(wù)器角色服務(wù)器角色”選項,在右側(cè)窗口中會顯示當(dāng)選項,在右側(cè)窗口中會顯示當(dāng)前數(shù)據(jù)庫服務(wù)器的所有固定服務(wù)器角色。前數(shù)據(jù)庫服務(wù)器的所有固定服務(wù)器角色。2022/3/2634 右擊要添加成員的右擊要添加成員的“dbcreator”固
34、定服務(wù)器角色,固定服務(wù)器角色,在彈出的快捷菜單中選擇在彈出的快捷菜單中選擇“屬性屬性”命令,屏幕出現(xiàn)命令,屏幕出現(xiàn)“服務(wù)器角色屬服務(wù)器角色屬性性”窗口,如圖窗口,如圖8.8所示。所示。用單鼠標(biāo)單擊窗口中用單鼠標(biāo)單擊窗口中“添加添加”按鈕,屏幕會出現(xiàn)按鈕,屏幕會出現(xiàn)“選擇登錄名選擇登錄名”對話框,單擊其中的對話框,單擊其中的“瀏覽瀏覽”按按鈕,在彈出的鈕,在彈出的“查找對象查找對象”窗口窗口中,如圖中,如圖8.9所示。選擇要添加所示。選擇要添加角色的登錄賬戶,例如,選擇角色的登錄賬戶,例如,選擇“PC-200806201116SQL_YH”,然后,單擊然后,單擊“確定確定”按鈕即可。按鈕即可。在
35、窗口中可以方便地單擊在窗口中可以方便地單擊“添添加加”和和“刪除刪除”按鈕實現(xiàn)對成員按鈕實現(xiàn)對成員的添加和刪除。的添加和刪除。圖圖8.8 “服務(wù)器角色屬性服務(wù)器角色屬性”窗窗口口 圖圖8.9 “查找對象查找對象”窗口窗口 2022/3/26352)從從“登錄登錄”項添加項添加 在對象資源管理器中,展開在對象資源管理器中,展開“數(shù)據(jù)庫服務(wù)器數(shù)據(jù)庫服務(wù)器/安全性安全性/登錄名登錄名”,右,右擊其中的擊其中的“SQL_YH”登錄賬戶,在彈出的快捷菜單上選擇登錄賬戶,在彈出的快捷菜單上選擇“屬性屬性”命命令,在打開的令,在打開的“登錄屬性登錄屬性”窗口中選擇窗口中選擇“服務(wù)器角色服務(wù)器角色”選項卡,如
36、圖選項卡,如圖8.10所示。所示。 在服務(wù)器角色在服務(wù)器角色選項窗口中,可以選項窗口中,可以直接多項選擇需要直接多項選擇需要的固定服務(wù)器角色,的固定服務(wù)器角色,方便地選擇和取消方便地選擇和取消固定服務(wù)器角色。固定服務(wù)器角色。例如,選擇例如,選擇“dbcreator”選選項。然后單擊項。然后單擊“確確定定”按鈕即可。按鈕即可。 圖圖8.10 “登錄屬性登錄屬性”窗窗口口 2022/3/2636(2)用命令方式添加固定服務(wù)器角色成員用命令方式添加固定服務(wù)器角色成員sp_addsrvrolememberloginame=用戶用戶名名,rolename=角色名角色名說明:格式中各選項的含義如下。說明:
37、格式中各選項的含義如下。loginame=用戶名用戶名表示添加到固定服務(wù)器表示添加到固定服務(wù)器角色的登錄賬戶名稱。角色的登錄賬戶名稱。rolename=角色名角色名表示要加入的角色名稱。表示要加入的角色名稱?!纠纠?.13】用系統(tǒng)存儲過程將登錄賬戶】用系統(tǒng)存儲過程將登錄賬戶“SQL_YH”添加為固定服務(wù)器角色添加為固定服務(wù)器角色sysadmin的成員。的成員。EXEC sp_addsrvrolemember SQL_YH,sysadmin2022/3/26372 2刪除固定服務(wù)器角色成員刪除固定服務(wù)器角色成員 sp_dropsrvrolememberloginame =用戶名用戶名,role
38、name=角色名角色名說明:格式中各選項的含義如下。說明:格式中各選項的含義如下。(1)loginame=用戶名用戶名表示要從固定表示要從固定服務(wù)器角色中刪除的登錄名稱。服務(wù)器角色中刪除的登錄名稱。(2)rolename=角色名角色名表示固定服務(wù)表示固定服務(wù)器角色名稱。器角色名稱。【例【例8.14】用系統(tǒng)存儲過程將登錄賬戶】用系統(tǒng)存儲過程將登錄賬戶“SQL _YH”從固定服務(wù)器角色從固定服務(wù)器角色sysadmin中刪除。中刪除。 EXEC sp_dropsrvrolemember SQL _YH,sysadmin2022/3/26383 3查看固定服務(wù)器角色信息查看固定服務(wù)器角色信息 【例【例
39、8.15】查看固】查看固定服務(wù)器角色定服務(wù)器角色sysadmin及其成及其成員的信息。員的信息。EXEC sp_helpsrvrole dbcreatorGOEXEC sp_helpsrvrolemembersp_helpsrvrole|sp_helpsrvrolemembersrvrolename=角色名角色名 圖圖8.11 8.11 例例8.158.15運(yùn)行結(jié)果運(yùn)行結(jié)果 2022/3/26398.4.3 8.4.3 數(shù)據(jù)庫角色管理數(shù)據(jù)庫角色管理 固定數(shù)據(jù)庫角色不能進(jìn)行添加、固定數(shù)據(jù)庫角色不能進(jìn)行添加、刪除或修改等操作,只能將用戶刪除或修改等操作,只能將用戶登錄賬戶添加成為固定數(shù)據(jù)庫角登錄賬
40、戶添加成為固定數(shù)據(jù)庫角色的成員。色的成員。 2022/3/26401添加數(shù)據(jù)庫角色成員添加數(shù)據(jù)庫角色成員 使用系統(tǒng)存儲過程使用系統(tǒng)存儲過程sp_addrolemember向向數(shù)據(jù)庫角色中添加成員,其語法格式如下。數(shù)據(jù)庫角色中添加成員,其語法格式如下。 sp_addrolememberrolename= 角角色名色名,membername= 用戶名用戶名 格式中各選項的含義如下。格式中各選項的含義如下。(1)rolename=角色名角色名表示數(shù)據(jù)庫角色表示數(shù)據(jù)庫角色名稱,可以是固定數(shù)據(jù)庫角色,也可以是用戶定名稱,可以是固定數(shù)據(jù)庫角色,也可以是用戶定義數(shù)據(jù)庫角色。義數(shù)據(jù)庫角色。(2)membern
41、ame= 用戶名用戶名表示要添表示要添加到數(shù)據(jù)庫角色的登錄賬戶名稱。加到數(shù)據(jù)庫角色的登錄賬戶名稱。2022/3/2641【例【例8.16】向?qū)W生管理數(shù)據(jù)庫添加】向?qū)W生管理數(shù)據(jù)庫添加Windows用戶用戶“PC-200806201116SQL_YH”。USE 學(xué)生管理學(xué)生管理GOEXEC sp_grantdbaccess PC-200806201116SQL_YH, SQL_YHGOEXEC sp_addrolemember db_ddladmin , SQL_YH2022/3/26422 2查看數(shù)據(jù)庫角色及其成員信息查看數(shù)據(jù)庫角色及其成員信息 語法格式如下。語法格式如下。sp_helpdbfi
42、xedrole| sp_helprolerolename = 角色名角色名sp_helpusername_ in_db=用戶名用戶名 2022/3/2643【例【例8.17】查看當(dāng)前數(shù)據(jù)庫中所有用戶及】查看當(dāng)前數(shù)據(jù)庫中所有用戶及db_ owner數(shù)據(jù)庫角色的信息。數(shù)據(jù)庫角色的信息。EXEC sp_helpuserGOEXEC sp_helpdb fixedrole db_owner 圖圖8.12 8.12 例例8.178.17運(yùn)行結(jié)果運(yùn)行結(jié)果 2022/3/26443 3刪除數(shù)據(jù)庫角色成員刪除數(shù)據(jù)庫角色成員 語法格式如下。語法格式如下。sp_droprolememberrolename=角色名
43、角色名,membername=用戶名用戶名【例【例8.18】刪除學(xué)生管理數(shù)據(jù)庫角色中的】刪除學(xué)生管理數(shù)據(jù)庫角色中的“SQL_YH”用戶。用戶。USE 學(xué)生管理學(xué)生管理GOEXEC sp_droprole member db_owner, SQL_YH 2022/3/26458.4.4 用戶定義數(shù)據(jù)庫角色管理用戶定義數(shù)據(jù)庫角色管理 1創(chuàng)建、修改和刪除用戶定義數(shù)據(jù)庫角色創(chuàng)建、修改和刪除用戶定義數(shù)據(jù)庫角色(1)用可視化方式創(chuàng)建、修改或刪除數(shù)據(jù)庫角色用可視化方式創(chuàng)建、修改或刪除數(shù)據(jù)庫角色【例【例8.19】用可視化方式為學(xué)生管理數(shù)據(jù)庫創(chuàng)建】用可視化方式為學(xué)生管理數(shù)據(jù)庫創(chuàng)建“db_owner”角色,并對其
44、進(jìn)行修改,然后刪角色,并對其進(jìn)行修改,然后刪除。除。在對象資源管理器中,展開在對象資源管理器中,展開“學(xué)生管理學(xué)生管理/安全性安全性/角色角色/數(shù)據(jù)庫角色數(shù)據(jù)庫角色”選項,右邊窗口會顯示出當(dāng)選項,右邊窗口會顯示出當(dāng)前數(shù)據(jù)庫的所有數(shù)據(jù)庫角色。前數(shù)據(jù)庫的所有數(shù)據(jù)庫角色。2022/3/2646右擊右擊“數(shù)據(jù)庫角色數(shù)據(jù)庫角色”,在彈出的快捷菜單中,在彈出的快捷菜單中選擇選擇“新建數(shù)據(jù)庫角色新建數(shù)據(jù)庫角色”命令,屏幕出現(xiàn)命令,屏幕出現(xiàn)“數(shù)數(shù)據(jù)庫角色據(jù)庫角色_新建新建”窗口。窗口。 在其中的在其中的“常規(guī)常規(guī)”窗口中,指定角色的名稱窗口中,指定角色的名稱“TYC”和所有者和所有者“SQL_YH”,單擊,單
45、擊“確定確定”按鈕就創(chuàng)建了新的數(shù)據(jù)庫角色,如圖按鈕就創(chuàng)建了新的數(shù)據(jù)庫角色,如圖8.13所示。所示。 圖圖8.13 “數(shù)據(jù)庫角色數(shù)據(jù)庫角色-新建新建”窗口窗口 2022/3/2647 右擊右擊“TYC”數(shù)據(jù)庫角數(shù)據(jù)庫角色,在快捷菜單中選擇色,在快捷菜單中選擇“屬屬性性”命令,在出現(xiàn)的命令,在出現(xiàn)的“數(shù)據(jù)數(shù)據(jù)庫角色屬性庫角色屬性-TYC”窗口中,窗口中,可以查閱或修改角色信息,可以查閱或修改角色信息,如指定新的所有者、安全對如指定新的所有者、安全對象、擁有架構(gòu)、角色成員等象、擁有架構(gòu)、角色成員等信息的修改,如圖信息的修改,如圖8.14所所示。示。 右擊右擊“TYC”數(shù)據(jù)庫角數(shù)據(jù)庫角色,在彈出的快捷
46、菜單中選色,在彈出的快捷菜單中選擇擇“刪除刪除”命令,在命令,在“刪除刪除對象對象”對話框中,選擇要刪對話框中,選擇要刪除的數(shù)據(jù)庫角色,單擊除的數(shù)據(jù)庫角色,單擊“確確定定”按鈕,即可刪除要指定按鈕,即可刪除要指定的數(shù)據(jù)庫角色。的數(shù)據(jù)庫角色。 圖圖8.14 “8.14 “數(shù)據(jù)庫角色屬性數(shù)據(jù)庫角色屬性-TYC”-TYC”窗口窗口 2022/3/2648(2)用命令方式創(chuàng)建、修改或刪除數(shù)據(jù)庫角色用命令方式創(chuàng)建、修改或刪除數(shù)據(jù)庫角色 sp_addrolerolename= 角色名角色名,ownername= 所有者所有者 sp_dropro1erolename= 角色名角色名【例【例8.20】用系統(tǒng)存
47、儲過程為學(xué)生管理數(shù)據(jù)庫創(chuàng)建】用系統(tǒng)存儲過程為學(xué)生管理數(shù)據(jù)庫創(chuàng)建名為名為“YLH”數(shù)據(jù)庫角色。數(shù)據(jù)庫角色。USE 學(xué)生管理學(xué)生管理GOEXEC sp_addrole YLH2022/3/26492 2添加和刪除用戶定義數(shù)據(jù)庫角色成員添加和刪除用戶定義數(shù)據(jù)庫角色成員 (1)用可視化方式添加和刪除數(shù)據(jù)庫角色成員用可視化方式添加和刪除數(shù)據(jù)庫角色成員【例【例8.22】用可視化方式為】用可視化方式為“SQL_YH”用用戶添加角色成員,然后刪除。戶添加角色成員,然后刪除。在對象資源管理器中,展開在對象資源管理器中,展開“學(xué)生管理學(xué)生管理/安安全性全性/用戶用戶”,右邊窗口會顯示出當(dāng)前數(shù)據(jù)庫,右邊窗口會顯示出
48、當(dāng)前數(shù)據(jù)庫的用戶。的用戶。2022/3/2650 右擊其中的右擊其中的“SQL_YH”用戶名,用戶名,在快捷菜單中選擇在快捷菜單中選擇“屬性屬性”命令,在出命令,在出現(xiàn)的現(xiàn)的“數(shù)據(jù)庫用戶數(shù)據(jù)庫用戶-SQL_YH”窗口中,窗口中,可以方便地添加和刪可以方便地添加和刪除除“角色成員角色成員”。例。例如,選中如,選中“TYC”的的復(fù)選框,使其成為該復(fù)選框,使其成為該用戶的角色成員,如用戶的角色成員,如圖圖8.15所示。單擊所示。單擊“確定確定”按鈕即可完按鈕即可完成添加或刪除操作。成添加或刪除操作。 圖圖8.15 “8.15 “數(shù)據(jù)庫用戶數(shù)據(jù)庫用戶-SQL_YH”-SQL_YH”窗口窗口 2022/
49、3/2651(2)用命令方式添加和刪除數(shù)據(jù)庫角色成員用命令方式添加和刪除數(shù)據(jù)庫角色成員【例【例8.23】用可視化方式為】用可視化方式為“TYC”數(shù)據(jù)庫角色數(shù)據(jù)庫角色添加成員,然后刪除。添加成員,然后刪除。USE 學(xué)生管理學(xué)生管理GOEXEC sp_addrolemember TYC, SQL_YHEXEC sp_droprolemember TYC, SQL_YH2022/3/26528.4.5 應(yīng)用程序角色管理應(yīng)用程序角色管理 應(yīng)用程序角色是用于控制應(yīng)用程序應(yīng)用程序角色是用于控制應(yīng)用程序存取數(shù)據(jù),不包含任何成員。在編寫存取數(shù)據(jù),不包含任何成員。在編寫數(shù)據(jù)庫的應(yīng)用程序時,可以定義應(yīng)用數(shù)據(jù)庫的應(yīng)
50、用程序時,可以定義應(yīng)用程序角色,讓應(yīng)用程序能使用編寫的程序角色,讓應(yīng)用程序能使用編寫的程序來存取程序來存取SQL Server系統(tǒng)的數(shù)據(jù),系統(tǒng)的數(shù)據(jù),即應(yīng)用程序的操作不需要在即應(yīng)用程序的操作不需要在SQL Server系統(tǒng)擁有登錄賬號以及用戶系統(tǒng)擁有登錄賬號以及用戶賬號,但是仍然可以存取數(shù)據(jù)庫。賬號,但是仍然可以存取數(shù)據(jù)庫。 2022/3/26531應(yīng)用程序角色與其他角色的區(qū)別應(yīng)用程序角色與其他角色的區(qū)別 (1)應(yīng)用程序角色沒有成員,因為它們只在應(yīng)用程序角色沒有成員,因為它們只在應(yīng)用程序中使用,不需要那些用戶權(quán)限。應(yīng)用程序中使用,不需要那些用戶權(quán)限。(2)必須為應(yīng)用程序角色設(shè)計一個激活密碼。必
51、須為應(yīng)用程序角色設(shè)計一個激活密碼。2使用應(yīng)用程序角色的優(yōu)點使用應(yīng)用程序角色的優(yōu)點(1)限制訪問數(shù)據(jù)庫所使用的應(yīng)用程序,提限制訪問數(shù)據(jù)庫所使用的應(yīng)用程序,提高系統(tǒng)安全性。高系統(tǒng)安全性。(2)提高提高SQL Server服務(wù)器的運(yùn)行性能。服務(wù)器的運(yùn)行性能。2022/3/26543 3建立應(yīng)用程序角色建立應(yīng)用程序角色 (1)用可視化方式建立應(yīng)用程序角色用可視化方式建立應(yīng)用程序角色【例【例8.24】設(shè)有一個】設(shè)有一個“學(xué)生管理學(xué)生管理”程序,用程序,用可視化方式在學(xué)生管理數(shù)據(jù)庫中建立應(yīng)用程可視化方式在學(xué)生管理數(shù)據(jù)庫中建立應(yīng)用程序角色:序角色:“學(xué)生管理學(xué)生管理-更新更新”,其口令為,其口令為“abc”
52、。 具體操作步驟如下。具體操作步驟如下。在對象資源管理器中,展開在對象資源管理器中,展開“學(xué)生管理學(xué)生管理/安安全性全性”選項,右擊其中的選項,右擊其中的“角色角色”項,在彈項,在彈出的快捷菜單上選擇出的快捷菜單上選擇“新建應(yīng)用程序角色新建應(yīng)用程序角色”命令。命令。 2022/3/2655在在“應(yīng)用程序角色應(yīng)用程序角色-新建新建”窗口中,輸入窗口中,輸入角色名稱:角色名稱:“學(xué)生管學(xué)生管理理-更新更新”,默認(rèn)架構(gòu),默認(rèn)架構(gòu)選擇選擇“dbo”,輸入,輸入密碼:密碼:“abc”,如圖,如圖8.16所示。所示。單擊單擊“確定確定”按鈕。按鈕。在學(xué)生管理數(shù)據(jù)庫中在學(xué)生管理數(shù)據(jù)庫中增加了增加了“學(xué)生管理
53、學(xué)生管理-更更新新”應(yīng)用程序角色。應(yīng)用程序角色。圖圖8.16 “8.16 “應(yīng)用程序角色應(yīng)用程序角色- -新建新建”窗口窗口 2022/3/2656(2)用命令方式建立應(yīng)用程序角色用命令方式建立應(yīng)用程序角色 sp_addapprole ro1ename=角色角色名名,password=密碼密碼,encrypt=加密模式加密模式【例【例8.25】設(shè)有一個】設(shè)有一個“學(xué)生管理學(xué)生管理”程序,用命令程序,用命令方式在學(xué)生管理數(shù)據(jù)庫中建立應(yīng)用程序角色:方式在學(xué)生管理數(shù)據(jù)庫中建立應(yīng)用程序角色:“學(xué)學(xué)生管理生管理-更新更新”,其口令為,其口令為“abc”。USE 學(xué)生管理學(xué)生管理GOEXEC sp_add
54、approle 學(xué)生管理學(xué)生管理-更更新新,abc2022/3/26574激活和使用應(yīng)用程序角色激活和使用應(yīng)用程序角色 激活應(yīng)用程序角色的語法格式如下。激活應(yīng)用程序角色的語法格式如下。 sp_setapprole ro1ename=角色角色名名,password=密碼密碼,encrypt=加密模式加密模式【例【例8.26】用命令方式激活已經(jīng)創(chuàng)建的應(yīng)用程序角】用命令方式激活已經(jīng)創(chuàng)建的應(yīng)用程序角色:色:“學(xué)生管理學(xué)生管理-更新更新”。USE 學(xué)生管理學(xué)生管理GOEXEC sp_setapprole 學(xué)生管理學(xué)生管理-更更新新,abc,none 2022/3/2658應(yīng)用程序角色與標(biāo)準(zhǔn)角色之間有以下
55、差別。應(yīng)用程序角色與標(biāo)準(zhǔn)角色之間有以下差別。(1)應(yīng)用程序角色沒有成員,而標(biāo)準(zhǔn)角色可以有應(yīng)用程序角色沒有成員,而標(biāo)準(zhǔn)角色可以有自己的成員。自己的成員。(2)默認(rèn)應(yīng)用程序角色是無效的,只有當(dāng)數(shù)據(jù)庫默認(rèn)應(yīng)用程序角色是無效的,只有當(dāng)數(shù)據(jù)庫應(yīng)用程序用系統(tǒng)存儲過程應(yīng)用程序用系統(tǒng)存儲過程sp_approle激活它才激活它才能使用,而標(biāo)準(zhǔn)角色一直保持有效。能使用,而標(biāo)準(zhǔn)角色一直保持有效。(3)應(yīng)用程序角色激活后,其所擁有的訪問權(quán)限應(yīng)用程序角色激活后,其所擁有的訪問權(quán)限才起作用。才起作用。(4)在運(yùn)行應(yīng)用程序所建立的連接斷開,或刪除在運(yùn)行應(yīng)用程序所建立的連接斷開,或刪除應(yīng)用程序角色后,其功能隨之失去作用,標(biāo)準(zhǔn)
56、角應(yīng)用程序角色后,其功能隨之失去作用,標(biāo)準(zhǔn)角色中的訪問功能恢復(fù)。色中的訪問功能恢復(fù)。2022/3/26595刪除應(yīng)用程序角色刪除應(yīng)用程序角色 (1)用可視化方式刪除應(yīng)用程序角色用可視化方式刪除應(yīng)用程序角色【例【例8.27】用可視化方式刪除已建立的】用可視化方式刪除已建立的“學(xué)生管學(xué)生管理理-更新更新”應(yīng)用程序角色。應(yīng)用程序角色。 在對象資源管理器中,展開在對象資源管理器中,展開“學(xué)生管理學(xué)生管理/安全性安全性/角色角色”選項,右擊其中的選項,右擊其中的“學(xué)生管理學(xué)生管理-更新更新”應(yīng)應(yīng)用程序角色,在彈出的快捷菜單上選擇用程序角色,在彈出的快捷菜單上選擇“刪除刪除”命令,屏幕會出現(xiàn)命令,屏幕會出
57、現(xiàn)“刪除對象刪除對象”對話框。在其中對話框。在其中選中要刪除的應(yīng)用程序角色,單擊選中要刪除的應(yīng)用程序角色,單擊“確定確定”按鈕按鈕即可完成刪除操作。即可完成刪除操作。2022/3/2660(2)用命令方式刪除應(yīng)用程序角色用命令方式刪除應(yīng)用程序角色sp_dropappro1e rolename=角色名角色名【例【例8.28】用命令方式刪除已建立的】用命令方式刪除已建立的“學(xué)生管理學(xué)生管理-更新更新”應(yīng)用程序角色。應(yīng)用程序角色。EXEC sp_dropappro1e 學(xué)生管理學(xué)生管理-更新更新2022/3/26618.5 數(shù)據(jù)庫權(quán)限管理數(shù)據(jù)庫權(quán)限管理8.5.1 權(quán)限的種類權(quán)限的種類1對象權(quán)限對象權(quán)
58、限 對象權(quán)限及其所作用的數(shù)據(jù)庫對象如下。對象權(quán)限及其所作用的數(shù)據(jù)庫對象如下。表對象,可執(zhí)行的操作:表對象,可執(zhí)行的操作:SELECT、INSERT、UPDATE、DELETE、REFERANCES視圖對象,可執(zhí)行的操作:視圖對象,可執(zhí)行的操作:SELECT、INSERT、UPDATE、DELETE存儲過程對象,可執(zhí)行的操作:存儲過程對象,可執(zhí)行的操作:EXECUTE字段(列)對象,可執(zhí)行的操作:字段(列)對象,可執(zhí)行的操作:SELECT、UPDATE2022/3/26622語句權(quán)限語句權(quán)限語句權(quán)限決定用戶能否執(zhí)行以下語句。語句權(quán)限決定用戶能否執(zhí)行以下語句。CREATE DATABASE語句,用
59、于創(chuàng)語句,用于創(chuàng)建數(shù)據(jù)庫。建數(shù)據(jù)庫。CREATE TABLE語句,用于在數(shù)據(jù)語句,用于在數(shù)據(jù)庫中創(chuàng)建表。庫中創(chuàng)建表。CREATE VIEW語句,用于在數(shù)據(jù)庫語句,用于在數(shù)據(jù)庫中創(chuàng)建視圖。中創(chuàng)建視圖。CREATE DEFAULT語句,用于在數(shù)語句,用于在數(shù)據(jù)庫中創(chuàng)建默認(rèn)對象。據(jù)庫中創(chuàng)建默認(rèn)對象。2022/3/2663CREATE PROCEDURE語句,用于語句,用于在數(shù)據(jù)庫中創(chuàng)建存儲過程。在數(shù)據(jù)庫中創(chuàng)建存儲過程。CREATE RULE語句,用于在數(shù)據(jù)庫語句,用于在數(shù)據(jù)庫中創(chuàng)建規(guī)則。中創(chuàng)建規(guī)則。CREATE FUNCTION語句,用于在語句,用于在數(shù)據(jù)庫中創(chuàng)建用戶自定義函數(shù)。數(shù)據(jù)庫中創(chuàng)建用戶自定
60、義函數(shù)。BACKUP DATABASE語句,用于備語句,用于備份數(shù)據(jù)庫。份數(shù)據(jù)庫。BACKUP LOG語句,用于備份數(shù)據(jù)語句,用于備份數(shù)據(jù)庫日志。庫日志。2022/3/26643隱含權(quán)限隱含權(quán)限 隱含權(quán)限是指有些用戶和角色不需隱含權(quán)限是指有些用戶和角色不需要授權(quán)就有的權(quán)限,包括:固定服務(wù)要授權(quán)就有的權(quán)限,包括:固定服務(wù)器角色、固定數(shù)據(jù)庫角色和數(shù)據(jù)庫對器角色、固定數(shù)據(jù)庫角色和數(shù)據(jù)庫對象所有者所擁有的權(quán)限。象所有者所擁有的權(quán)限。2022/3/26658.5.2 權(quán)限授予權(quán)限授予1用可視化方式完成用戶或角色的權(quán)限用可視化方式完成用戶或角色的權(quán)限授予授予(1)用可視化方式完成用戶或角色的語句用可視化方
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年拉薩貨運(yùn)從業(yè)資格證考試試題及答案解析
- 保障性合同范本
- 區(qū)域總經(jīng)理合同范本
- 醫(yī)療就業(yè)合同范本
- 包食堂合同范本
- 促銷活動場地出租合同范本
- 農(nóng)村電商合同范本
- 利用合同范本
- 前廳接待勞務(wù)合同范本
- 5人合作合同范本
- 工程項目部安全生產(chǎn)治本攻堅三年行動實施方案
- 制藥工程 專業(yè)英語 Unit 1(課堂PPT)
- 2022春蘇教版五年級下冊科學(xué)全冊單元課件全套
- 小學(xué)期末班級頒獎典禮動態(tài)PPT模板
- 液堿生產(chǎn)工序及生產(chǎn)流程敘述
- 圖解調(diào)音臺使用說明(共14頁)
- 人民軍隊性質(zhì)宗旨和優(yōu)良傳統(tǒng)教育課件教案
- 心理抗壓能力測試?yán)}
- 操作系統(tǒng)試題
- 電子秤校驗記錄表
- (完整word)外研版八年級下冊英語課文電子版
評論
0/150
提交評論